<div>root /www;</div>location ^~ /folder/ { <div> return 403;<div> error_page 404 = @backend;<br><div> location ^~ /folder/file1 { };</div><div> location ^~ /folder/file2 { };</div><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta http-equiv="content-type" content="text/html; charset=utf-8"><div>
<meta http-equiv="content-type" content="text/html; charset=utf-8">}</div><div>что-то типа такого<br><div class="gmail_quote">19 января 2011 г. 23:26 пользователь Max Ivanov <span dir="ltr"><<a href="mailto:ivanov.maxim@gmail.com">ivanov.maxim@gmail.com</a>></span> написал:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Хочу сделать что-то вроде whitelist на файлы и при этом не отдавать на<br>
php файлы которые существуют (мало ли что там есть).<br>
<br>
Для этого надо запретить скачивание файлов в location если они есть и<br>
корректно уходить на 404 если их нет.<br>
<br>
location / {<br>
error_page 404 = @drupal;<br>
return 403; # <--- вот так не работает, не отрабатывает на @drupal никогда<br>
}<br>
<br>
location @drupal {<br>
rewrite ^/(.*)$ /index.php?q=$1;<br>
}<br>
<br>
location =/index.php {<br>
include /etc/nginx/settings/fastcgi.conf;<br>
fastcgi_pass php_upstream1;<br>
}<br>
<br>
#Для ImageCache<br>
location /sites/all/files/imagecache/ {<br>
try_files $uri @drupal;<br>
}<br>
<br>
#разрешаем любые файлы из sites/all/files<br>
location /sites/all/files/ {<br>
}<br>
<br>
#разрешаем js/css/png/ и проч отовсюду, т.к. они разрбросаны в разных модулях<br>
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {<br>
}<br>
_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://nginx.org/mailman/listinfo/nginx-ru</a><br>
</blockquote></div><br></div></div></div>