匹配nginx服务器块上包含特定单词(即:“admin”)的相对路径

匹配nginx服务器块上包含特定单词(即:“admin”)的相对路径,nginx,Nginx,我试图拒绝访问所有的IP,但我的访问我的网站的管理面板 像这样: location /admin { allow my.ip.add.ess; deny all; } 这很有效。问题是,“/index.php/admin”也可以访问管理员登录页面,而块“location/index.php/admin”不起作用 为什么下面的方法不起作用 location /index.php/admin { allow my.ip.add.ess; deny all; } 有

我试图拒绝访问所有的IP,但我的访问我的网站的管理面板

像这样:

location /admin {
    allow my.ip.add.ess;
    deny all;
}
这很有效。问题是,“/index.php/admin”也可以访问管理员登录页面,而块“location/index.php/admin”不起作用

为什么下面的方法不起作用

location /index.php/admin {
    allow my.ip.add.ess;
    deny all;
}

有没有更简单的方法来实现我想要的?基本上,每个包含“/admin”的URL都只能通过我的IP访问。

请参见我的回答:谢谢您的评论。不幸的是,当我尝试您的解决方案时,它可以阻止其他IP地址,但在我的解决方案中出现了404错误。顺便说一句,这是一个Magento平台,我的自定义管理员url中有一个“25;”。我不知道这是否相关。我的意思是尝试用
\badmin\b
代替您给出的第一个示例,因为这也将涵盖第二个示例。然后,您需要确保在位置块中有相关的配置详细信息