Regex 基于url限制访问的nginx规则
我试图在nginx中设置一个规则,如果从指定的ip地址范围之外访问某个url,我将拒绝通信。我不想指定需要保护的url模式,而是想设置一个规则,该规则基本上如下所示: 如果URL不是特定的URL格式,请在permissions.conf文件中应用拒绝/允许规则 以前我有过这个(似乎有用):Regex 基于url限制访问的nginx规则,regex,nginx,Regex,Nginx,我试图在nginx中设置一个规则,如果从指定的ip地址范围之外访问某个url,我将拒绝通信。我不想指定需要保护的url模式,而是想设置一个规则,该规则基本上如下所示: 如果URL不是特定的URL格式,请在permissions.conf文件中应用拒绝/允许规则 以前我有过这个(似乎有用): location ^~ /admin { include permissions.conf file } permissions.conf文件 allow 127.0.0.1; deny a
location ^~ /admin {
include permissions.conf file
}
permissions.conf文件
allow 127.0.0.1;
deny all;
现在,我想替换上面的规则,并指定一个只有在url不是特定模式时才会命中的规则(因此,在下面的例子中,如果它不是/a/test,那么它应该应用permissions.conf文件。下面的格式不起作用-关于如何修复它,有什么想法吗
location ~ (/a\/(?!test)) {
include permissons.conf
}
我也试过这个:
location ~ (/a/(?!test)) {
include permissons.conf
}
&
提前谢谢我想你可以试试这个:
location / {
if ($request_uri !~ "^/a/test$")
{
include permissons.conf
}
}
location / {
if ($request_uri !~ "^/a/test$")
{
include permissons.conf
}
}