Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Разрешающая логика
On Fri, Nov 13, 2009 at 06:29:05AM -0500, shebeko wrote:
> Помогите плиз. Как-то туго у меня с регулярными выражениями.
> Как бы написать такой конфиг, в котором бы отдавались только те файлы ,
> которые явно разрешены.
> Т.е. только файлы с явно разрешёнными расширениями.
> И заодно как запретить отдавать всё что лежит в директориях .svn
>
> Поиском не нашёл.
> То что сам пробовал сваять, так как-то либо всё отдаётся, либо ничего :(
>
> Вот конфиг виртуального хоста целиком.
>
> server
> {
> listen www.v2.vnetgis.com:80;
> server_name www.v2.vnetgis.com v2.vnetgis.com;
>
> root /home/www/sites/vnet/data;
>
> location /
> {
> index index.html index.htm index.php;
> }
>
> location ~* ^.+\.php$
> {
> include inc/fastcgi_params;
> fastcgi_pass unix:/tmp/php5.socket;
>
> fastcgi_index index.php;
> fastcgi_connect_timeout 60;
> fastcgi_send_timeout 180;
> fastcgi_read_timeout 180;
> fastcgi_buffer_size 32k;
> fastcgi_buffers 4 32k;
> fastcgi_busy_buffers_size 32k;
> fastcgi_temp_file_write_size 32k;
> fastcgi_next_upstream off;
> fastcgi_intercept_errors on;
>
> fastcgi_param SCRIPT_FILENAME
> $document_root/$fastcgi_script_name;
>
> }
>
> access_log /a/nginx/log/access.log;
>
> error_page 401 /errors/401.err;
> error_page 403 /errors/403.err;
> error_page 404 /errors/404.err;
> error_page 502 /errors/502.err;
> # Gateway Time-out
> error_page 504 /errors/504.err;
>
> location /errors/
> {
> root /home/www/sites/default/data;
> }
>
> location ~* ^.+\.(gif|png|jpg|jpeg)$
> {
> access_log off;
> expires 30d;
> }
>
> location ~* ^.+\.(txt|js|css|zip|rar)$
> {
> access_log off;
> expires 30d;
> }
> }
location / {
return 403;
}
location ~ /\.svn/ {
return 403;
}
location ~* ^.+\.(gif|png|jpg|jpeg)$ {
...
}
location ~* ^.+\.(txt|js|css|zip|rar)$ {
...
}
location ~* ^.+\.php$ {
...
}
location /errors/ {
...
}
--
Игорь Сысоев
http://sysoev.ru
|