I have a PHP server running on Apache, I get lots of request looks like this,
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
The _ parameter is mysteriously added to the request. I am trying to find out who is doing that.
There is a NetScaler running in front of Apache.
jQuery adds a parameter like that to get around IE's caching.
edit:
it only adds it for get requests, and only if the option cache is false:
cache: false
It could be the JQuery CacheBuster parameter.
Resources :
- [jQuery] GData JSON queries "Invalid query parameters:_"
- [jQuery] Turn off Cache Busting in $.getScript
- Cache-busting
Probably it's a dummy parameter added by the reverse proxy to force non-cached content to be served.
1283458471913 is a unix timestamp in ms, probably a bot/proxy making sure that they get a fresh page and not a cached version.
Could also be jQuery which would cause this for AJAX request of you have the nocache attribute set to 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 : "");
}