![在 nginx 中从域名中删除 www](https://linux22.com/image/637156/%E5%9C%A8%20nginx%20%E4%B8%AD%E4%BB%8E%E5%9F%9F%E5%90%8D%E4%B8%AD%E5%88%A0%E9%99%A4%20www.png)
我想www.
从主站点和所有子级域名中删除。我不在乎我处于 TLD 的多少级;www
被禁止使用。它应该发出 301 重定向。
- www.example.com
- www.123.example.com
我写了以下服务器块,但它似乎不起作用。
server {
listen 80;
server_name ~^(www\.)(?<domain>.+)$;
return 301 $scheme://$domain/$request_uri;
}
答案1
以下是我的做法:
server {
listen 80;
server_name ~^www\.(?<domain>.+?)$;
return 301 $scheme://$domain/$request_uri;
}
答案2
从这个问题:
if ($http_host ~* "^www\.(.+)$"){
rewrite ^(.*)$ http://%1$request_uri redirect;
}