对于我使用 nginx 托管的每个网站,我都有一个不同的文件,其中包含 server {} 块/etc/nginx/conf.d/
例如...
/etc/nginx/conf.d/website1.co.uk
/etc/nginx/conf.d/website2.org
/etc/nginx/conf.d/website3.com
我发现自己在每个 server {} 块中重复相同的代码,并且想知道是否可以制作一个“catch all” server {} 块来容纳可重用代码。
这个新的“包罗万象”文件将包括诸如...
# Redirect all www. attempts to non-www.
server {
server_name www.$anything; hmm?
return 301 $scheme://$hostname$request_uri;
}
server {
server_name _; hmm?
# Add expires to static files
location ~* \.(?:ico|css|js|gif|jpe?g|png|bmp)$ {
expires max;
access_log off;
}
# Pass PHP files to PHP
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}
有没有人这样做过?
我们是否必须为我们托管的每个网站重复这些类型的通用代码?