Кто добавляет параметр _ _ "Single Underscore Query Parameter?

У меня есть сервер PHP, работающий на Apache, я получаю много запросов, как это,

10.1.1.211 - - [02/Sep/2010:16:14:31 -0400] "GET /request?_=1283458471913&action=get_list HTTP/1.1" 200 547 0 "http://www.example.com/request" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 (.NET CLR 3.5.30729)" 28632 15602 

Параметр _ таинственно добавляется в запрос. Я пытаюсь выяснить, кто это делает.

Перед Apache работает NetScaler.

jQuery добавляет такой параметр, чтобы обойти кэширование IE.

edit: он добавляет его только для запросов на получение, и только если кеш-ключ равен false:

 cache: false 

Это может быть параметр JQuery CacheBuster.


Ресурсы :

  • [jQuery] Запросы GData JSON «Неверные параметры запроса: _»
  • [jQuery] Отключение кэша Busting в $ .getScript
  • Очистки кэша

Вероятно, это фиктивный параметр, добавленный обратным прокси, чтобы заставить обслуживать не кэшированный контент.

1283458471913 – это временная метка unix в мс, вероятно, бот / прокси-сервер, обеспечивающий получение новой страницы, а не кешированной версии.

Также может быть jQuery, который приведет к тому, что для запроса AJAX у вас установлен атрибут nocache равным true.

 if ( s.cache === false && type == "GET" ) { var ts = now(); // try replacing _= if it is there var ret = s.url.replace(/(\?|&)_=.*?(&|$)/, "$1_=" + ts + "$2″); // if nothing was replaced, add timestamp to the end s.url = ret + ((ret == s.url) ? (s.url.match(/\?/) ? "&" : "?") + "_=" + ts : ""); }