nginx使用正则表达式忽略位置定义

时间:2013-09-01 22:31:55

标签: nginx

我的nginx服务器(nginx 1.2.1)上有以下域配置:

server {

    listen 80 default_server;

    server_name example.com;

    root /var/www/example.com;

    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

    location ~ /content/(.*)\.(txt|md) {
        return 301 /error;
    }

    location ~ /tpl/(.*) {
        return 301 /error;
    }

    location ~ /sys/(.*) {
        return 301 /error;
    }

    location / {
        index index.php
        try_files $uri $uri/ /index.php;
    }

}

正如您所看到的,我想禁止访问.txt目录中的所有.md / content个文件以及对/tpl和{{{}的每次访问权限1}}目录。但是,nginx似乎忽略了这些规则中的每一个。

所以我尝试了不同的东西,即:

/sys

因为这有效,我猜有一个优先问题。有人知道如何应用所有3条规则吗?

谢谢!

- 最大

0 个答案:

没有答案