Web 服务器是 NginX,我需要执行以下这些操作:
- 从80端口访问xxx.php时,返回404;
- 当从 8555(ssl 连接)访问 xxx.php 时,正常方式。
我尝试过这个方法:
server
{
listen 80;
location xxx.php {
return 404;
}
location / {
.....
}
}
server
{
listen 8555 default ssl;
location / {
....
}
}
wherelocation /{
指令完全相同。但似乎不起作用。
感谢您的帮助。
答案1
使用location /path/to/xxx.php
而不是location xxx.php
。
答案2
我想我错过了一个重要的点,该服务器是一个代理服务器,并且上游服务器有很多重写规则,所以这里应该匹配的是不是文件本身,还有 url。
所以解决方案是这样的:
在上游服务器中找到重写规则,找到要匹配的关键字,添加
location ^~ /keyword {
return 404;
}