profreehost claims that a '?i=1' url GET param can protect their servers. I wondered how. I did use google before asking question, but all the results was about they are for security and how to remove them (if you have ssh access). I wanted to know the principles and maybe try to implement one for my own (on a vps) site. I guess the answer lies at the behavior of browsers.
The parameter in itself is not the security mechanism, the security mechanism / browser check is the ability of the browser to store and use a cookie...
The pseudo logic is something along the lines of:
If a cookie is set:
-> assume that only "real browsers" can use cookies and show the page
If no cookie is set:
-> When URL parameter
i
is set and greater than 3 show error (assume that a browser that will follow multiple redirects but won't store cookies is not a real browser and/or broken)-> ELSE
--> set the cookie
--> increment
i
with 1--> return a redirect to
URL?i=$i