跨站点共享nginx指令



我在一台服务器上有大约30个站点。我正试图在不改变sites_enabled中各自站点文件的情况下为每个站点添加IP拦截器。

ie。我需要将此块共享给服务器上的所有网站。

location / {
if ($allowed_country = no) {
return 418;         
}
try_files $uri $uri/ /index.php?$query_string;
}
到目前为止,我所有的研究都表明我不能这样做。有人能确认一下吗?无论如何,我可以跨网站共享它,并确保它不会在网站的nginx配置文件中被覆盖?

您是否已经尝试在服务器块中添加if指令(在所有这些位置语句之前)并在此之后中断?

server {
if ($allowed_country = no) {
return 418;
break; 
}
}

if指令在位置被认为是邪恶的,因为nginx的奇怪的声明规则。他们大部分时间都在做奇怪的事情,所以尽量避免。

最新更新