如何通过调整Nginx的配置文件,实现域名的跳转?
如何通过调整Nginx的配置文件,实现域名的跳转?
神马意思呢?
举个栗子说明下:
比如你创建了一家公司,公司的网站为:www.plmn785.com;
起初公司用户不多,你也每太在意这一点,后来你公司发展速度特别快,用户数量也爆增;
很多用户反馈,公司的域名不好系,太长很麻烦;
所以,你打算把公司的域名改为:www.haha.com
把www.plmn785.com这个域名,改为www.haha.com这个域名非常简单;
问题是,改完之后,老用户习惯了www.plmn785.com原来的老域名,这个时候怎么办?
把辛辛苦苦积累起来的老用户都丢掉吗?
肯定不行!肿麼办?
非常简单,只需要该下配置文件既实现域名的跳转;
具体操作如下:
第一步、运用 vim 进入Nginx的配置文件;
vim /usr /location /nginx /conf /nginx.conf
server {
listen 80:
server_name www.plmn785.com; ##老域名
rewrite ^/ ( .* ) www.baidu.com/$1; ##由老域名跳转至新域名;
location / {
root html;
index index.html index.htm
} }
译为:Nginx服务,监听端口为80,原先的服务域名是www.plmn785.com,现在将其改写为www.baidu.com,以实现每当用户访问老域名的时候,系统都会转跳至新域名;
具体的网页内容去 /usr /local /nginx /html 目录里面找;
重点:rewrite ^/ ( .* ) www.baidu.com/$1
rewrite 重写的意思;
^/ ( .* ) 正则表达式:意为匹配以根号为开头,以任意字符数,出现任意次数的域名;
$1 复制(.*)括号中的内容
翻译成人话就是:我不管你访问老域名 www.plmn785.com下的任何网页文件,都跳转到新域名 www.baidu.com 下对应的网页文件;
知识拓展:
解释下列命令语句的意思:
1.rewrite /a.html /b.html
答:当客户访问 /a.html 网页,系统会跳转到 /b.html 网页;
2.rewrite ^/ www.baidu.com
答:当客户访问以 ^/ 开头的网页文件,都跳转到域名 www.baidu.com;
3.rewrite ^/(.*) www.baidu.com/$1
答:不管你访问老域名 www.plmn785.com下的任何网页文件,都跳转到新域名 www.baidu.com 下对应的网页文件;
以上.......
(END)
祝:开心!
罗贵
2019-04-04于深圳