简介: Nginx:不带www域名301重定向到www域名

方式一:两个域名分开写

1
2
3
4
5
6
7
8
9
10
11
server {
listen 80;
server_name example.org;
return 301 http://www.example.org$request_uri;
}

server {
listen 80;
server_name www.example.org;
...
}

方式二:两个域名写一起

1
2
3
4
5
6
7
8
server {
listen 80;
server_name example.com www.example.com;
# 跳转到www
if ($host = 'example.com' ) {
rewrite ^(/.*)$ http://www.example.com$1 permanent;
}
}

或者

1
2
3
4
5
6
7
8
server {
listen 80;
server_name example.com www.example.com;
# 跳转到www
if ($host ~ '^example.com'){
return 301 https://www.example.com$request_uri;
}
}

参考
Nginx:不带www域名301重定向到www域名-阿里云开发者社区 (aliyun.com)

nginx 301 将不带www域名,重定向到www域名

nginx配置301永久重定向 不带3w跳转到www的域名