得劲

Nginx规则定制域名www跳转
目标: 利用Nginx Rwrite实现带www的域名与不带www域名之间互相跳转。 1.带www跳转不带www...
扫描右侧二维码阅读全文
07
2018/08

Nginx规则定制域名www跳转

目标:

利用Nginx Rwrite实现带www的域名与不带www域名之间互相跳转。

1.带www跳转不带www

在Nginx配置文件sever{}内添加

if ($http_host !~ "^abc.com") {   
   rewrite /.* https://abc.com$uri permanent;
}

两处abc.com均为不带www的域名。

1.1 Apache的.htaccess

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.\.com$ [NC]
RewriteRule ^(.*)$ http://abc.com/$1 [L,R=301]

没有环境,未测试。

2.不带www跳转带www

2.1

在Nginx配置文件sever{}内添加

if ($host != 'www.abc.com'){
    rewrite ^/(.*)$ http://www.abc.com/$1 permanent;
    }

2.2 未测试

server{}内去掉不带www的域名

    server{
    listen 80;
    server_name www.abc.com;
    }

添加新server{}段,用rewrite方法重定向

    server {
    server_name abc.com;
    rewrite ^(.*)$ http://www.abc.com$1 permanent;
    }

2.3 未测试

添加新server{}段,用301重定向

server {
listen 80;
server_name abc.com;
return 301 http://www.abc.com$request_uri;
}

原server{}内去掉不带www的域名

server {
listen 80;
server_name www.abc.com;
index index.html index.htm index.php;
}

参考链接:

1. nginx+tomcat把带WWW域名自动跳转到不带www域名方法
2. nginx服务器设置301重定向,不带www跳转到带www域名
3. nginx301跳转。不带www的域名重定向到带www的域名

Last modification:October 13th, 2018 at 01:45 pm
If you think my article is useful to you, please feel free to appreciate

Leave a Comment