Разрешающая логика

shebeko nginx-forum at nginx.us
Fri Nov 13 14:29:05 MSK 2009


Помогите плиз. Как-то туго у меня с регулярными выражениями.
Как бы написать такой конфиг, в котором бы отдавались только те файлы , которые явно разрешены.
Т.е. только файлы с явно разрешёнными расширениями.
И заодно как запретить отдавать всё что лежит в директориях .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;
        }
    }


Posted at Nginx Forum: http://forum.nginx.org/read.php?21,22543,22543#msg-22543






More information about the nginx-ru mailing list