0
此设置是为多个域共享单个CMS平台。它将允许任何域指向我的服务器IP。Nginx捕获所有域,然后添加www如果不存在
我可以使用nginx server_name _;抓住所有。
但如果www不存在,我想301重定向到www(追加www。infront)。如果www存在,那很好。
我该如何做到这一点?
此设置是为多个域共享单个CMS平台。它将允许任何域指向我的服务器IP。Nginx捕获所有域,然后添加www如果不存在
我可以使用nginx server_name _;抓住所有。
但如果www不存在,我想301重定向到www(追加www。infront)。如果www存在,那很好。
我该如何做到这一点?
我已经使用nginx的以下服务器配置解决了这个。
server {
listen 80 default_server;
server_name ~^(?!www\.)(?<domain>.+)$;
return 301 $scheme://www.$domain$request_uri;
}
server {
listen 80;
server_name ~^(?<domain>.+)$;
root /home/wwwroot/web;
..
..
}
这将允许任何域名和301重定向到www。
可以赶上加www和重定向到www这个
server {
listen 80;
server_name example.com;
return 301 http://www.example.com$request_uri;
}
server {
listen 80;
server_name www.example.com;
root /path/to/site;
# Extra conf here.
}
这是域名“example.com”。我需要的是如何捕获所有域,而不是在server_name指令中定义域。因为会有很多域名。 – Syed