<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">баг или фича?<br><br>имеем<br><br>error_page 403 @ERROR_PAGE_403;<br><br>location ~* /\. {<br>return 403;<br>}<br><br>location&nbsp;/ {<br>try_files&nbsp;/index.html $uri $uri/ @PHP5;<br>}<br><br>location&nbsp;@PHP5 {<br>&nbsp;include&nbsp;include/fastcgi_param;<br>&nbsp;include&nbsp;include/error;<br>&nbsp;include&nbsp;include/error_ERROR_PAGE_404;<br>&nbsp;fastcgi_param&nbsp;SCRIPT_FILENAME &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$document_root/index.php5;<br>&nbsp;fastcgi_pass_request_body&nbsp;off;<br>&nbsp;client_body_in_file_only&nbsp;clean;<br>&nbsp;fastcgi_pass&nbsp;php5-cluster;<br>}<br><br>location @ERROR_PAGE_403 {<br>&nbsp;include include/allow_all;<br>&nbsp;root /srv/www/vhosts/service/error;<br>&nbsp;try_files /$host/403.html /$host/index.html /403.html /index.html; #да, знаю что неправильно, но работает нормально для случаев, где try_files используется только в этом location<br>}<br><br>при запрос&nbsp;<a href="http://gde-to.tam/test/.secret">http://gde-to.tam/test/.secret</a>&nbsp;и отсутствии /$host/403.html /$host/index.html /403.html получаем внутренний редирект на @PHP5, а не на index.html<br><br>если же сделать так:<br>- try_files /$host/403.html /$host/index.html /403.html /index.html;<br>+ try_files /$host/403.html /$host/index.html /403.html /index.html /index.html; # /index.html 2 раза подряд в конце&nbsp;<br><br>то получаем /index.html<br><br>P.S.: но в любом случае, при запросе&nbsp;<a href="http://gde-to.tam/test/secret">http://gde-to.tam/test/./secret</a>&nbsp;получаем опять @PHP5<br>я неправильно описал location?<br><br></body></html>