在一个服务器上多个域名使用环境下,如果某个项目配置了特殊端口访问,例如下面***系统,就会导致其他域名也可以访问。所以需要针对目标端口域名server进行域名判断,判断是否是当前server_name下的域名,这个时候只需要判断$host就可以。
注意:一定要配置到 location /{ … 上面
server {
listen 8081;
server_name ***.com;
index index.html index.htm index.php default.html default.htm default.php;
set $currenthost '';
if ($host = '***.com') {
set $currenthost 1;
}
if ($currenthost != 1) {
return 403;
}
location / {
proxy_set_header X-Real-Ip $remote_addr;
......
}