вот в чем проблема: при запросе URL вроде - http://server/path/to/file.html?param=../../something/something я получаю ответ:
500 Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
...
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
журнал говорит:
xxx.xxx.xxx.xxx - - [05/Mar/2010:13:43:29 -0500] "GET /path/to/file.html?param=../../something/something HTTP/1.1" 404 - "-" ...
если я удаляю один экземпляр '../' в строке запроса (запрос http://server/path/to/file.html?param=../something/something), я получаю запрашиваемую страницу. выдает ошибку только на двух или более '../'s.
это на каком-то хост-сервере, и то же самое не дает ошибок на моих локальных серверах (LAMP, WAMP). Полагаю, речь идет о настройке Apache, но я не знаю, какие опции проверять.
Apache2.2.14 (Unix) под вопросом, PHP установлен (но он явно не имеет ничего общего с PHP, когда я запрашиваю обычный старый HTML-файл), правила mod_rewrite отключены (нет файлов .htaccess в запрошенном пути к файлу).
какие-либо идеи о том, как успешно передать несколько '../ в строке запроса?