Nginx 配置旧域名重定向到新域名

Nginx 配置旧域名重定向到新域名,第1张

Nginx 里的 rewrite 模块是专门负责静态重写的。

该模块允许使用正则表达式改变 URI,并且根据变量来重定向以及选择配置。

基本用法是: rewrite patten replace flag 。 patten 是正则表达式,与 patten 匹配的 URL 会被改写为 replace ,而 flag 是可选的,可以有如下标志:

例如,要将旧域名重定向到新域名上:

如果是跳转到新域名上时要保留路径,那么:

还有一种方式,如果域名不是 www.new.domain.com 就统一转到 https://www.new.domain.com :

$host 是 core 模块内部的一个变量,当请求头里不存在 host 属性或者是个空值, $host 则等于 server_name 。如果请求头里有 host 属性,那么 $host 等于 host 属性除了端口号的部分,例如 host 属性是 www.example.com ,那么 $host 就是 www.example.com 。

也可以单独增加一个 server,在里面统一设置, permanent 是 301 重定向:

rewrite 与 location 配合实现图片文件跳转到 CDN:

访问后台出现重定向次数过多该怎么办?-建站需知

    如果对于域名没有过多了解的人,会经常将 example.com 和 www.example.com 认定为相同的域名。但事实并非是如此, example.com 为顶级域名, www.example.com 为二级域名。有的人在上网时习惯性的输入 example.com 进行访问,而有的人则选择带有 www 前缀的二级域名,但是细心的人会发现,多数的知名网站都会将其重定向到带有 www 的二级域名中,这也是符合我们的使用习惯的。从开发的角度来看,这两个域名会带来跨域的问题,所以我们应该在访问 example.com 自动重定向到 www 二级域名,可以减少不必要的问题。接下来我介绍一下应该如何进行配置,我以自己的域名 hesunfly.com 为例进行介绍,使用的服务器软件为 Nginx。

登陆服务器,打开 Nginx 的域名配置文件:

完成上面的配置后我们在浏览器输入 hesunfly.com 就可以看到会自动重定向到 https://www.hesunfly.com 下。可是如果用户使用 Https 输入 https://hesunfly.com 我们的重定向就不能正常使用了,所以接下来需要配置 Https 下的重定向。

大功告成!其实也不复杂,但是自己在配置时也是踩了一些坑!

文章同步发布在我的个人博客中,传送门 Hesunfly Blog


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6320523.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-20
下一篇 2023-03-20

发表评论

登录后才能评论

评论列表(0条)

保存