此设置适用于共享单个CMS平台的多个域。它将允许任何域指向我的服务器IP。
我可以使用nginx server_name _;抓住所有人。
但是如果没有www,我想301重定向到www(附加www。infront)。如果存在www,则没关系。
我怎样才能实现这个目标?
答案 0 :(得分:1)
我已通过使用以下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。
答案 1 :(得分:0)
您可以在没有www的情况下捕获并使用此
重定向到wwwserver {
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.
}