当前位置:首页 > 群晖专栏 > 运维部署 > 正文内容

Nginx设置301重定向到www和强制跳转https教程

admin6年前 (2019-03-06)运维部署318

前言

本文将详解如何配置Nginx的conf文件来使域名跳转到www和强制跳转到https


首先在建站之前,需要确认今后网站是使用类似ioiox.com一级域名,还是www.ioiox.com二级域名,根据域名长度,使用场景,域名视觉美观来决定.为不影响搜索引擎的收录和网站规范化,请务必提前规划,后期尽量不要改动.




本站示例

例如本站使用www.ioiox.com作为主域名,并使用https协议.
呈现在地址栏的主页地址为https://www.ioiox.com
呈现在地址栏的内页地址为https://www.ioiox.com/about.html

然而用户习惯,在输入网址时不会主动去填写https,甚至不会去输入www,而仅仅只是输入ioiox.com

按照以下配置,我们可以实现以下跳转:

地址栏输入ioiox.com跳转到https://www.ioiox.com
地址栏输入www.ioiox.com跳转到https://www.ioiox.com
地址栏输入ioiox.com/about.html跳转到https://www.ioiox.com/about.html
地址栏输入www.ioiox.com/about.html跳转到https://www.ioiox.com/about.html

配置流程


需要把域名的www和@两个主机分别设置A记录到你的服务器IP

全站域名跳转到www二级域名

配置80端口http协议重定向

编辑站点nginx.conf文件
第一个标注为http默认80端口,同时添加ioiox.com和www.ioiox.com两个域名.
第二个标注为添加301重定向代码

如果站点没有配置SSL证书,或者不使用https协议,把代码中的https替换为http即可.
return 301 https://www.ioiox.com$request_uri;

代码解释:
此代码表示手动不输入https只输入上面2个域名ioiox.com和wwww.ioiox.com时,浏览器默认使用80端口并自动添加http为http://ioiox.comhttp://www.ioiox.com都将因此段代码而强制跳转到https://www.ioiox.com
其中request_uri代表包含域名内页也将跳转到https的内页

1.jpg

配置443端口https协议重定向


如果站点没有配置SSL证书,或者不使用https协议,可以忽略以下步骤无需添加代码.

继续编辑下面的https
第一个标注为https默认443端口,同时添加ioiox.com和www.ioiox.com两个域名.
第二个标注为添加301重定向代码

 if ($host = 'ioiox.com') {
            return 301 https://www.ioiox.com$request_uri;
        }

代码解释:
此代码表示如果输入的域名为https://ioiox.com将重定向到https://www.ioiox.com
其中request_uri代表包含域名内页也将跳转到https的内页

2.jpg
保存后上传覆盖你原有的conf文件
输入nginx -t检查错误
3.jpg

重启Nginx后生效

全站域名跳转到不含www一级域名


如果希望不使用www,直接使用ioiox.com一级域名为主域名,也可以稍作修改来实现.依然需要把域名的www和@两个主机都设置A记录到你的服务器IP.

配置80端口http协议重定向

编辑站点nginx.conf文件
第一个标注为http默认80端口,同时添加ioiox.com和www.ioiox.com两个域名.
第二个标注为添加301重定向代码

如果站点没有配置SSL证书,或者不使用https协议,把代码中的https替换为http即可.
return 301 https://ioiox.com$request_uri;

代码解释:
此代码表示手动不输入https只输入上面2个域名ioiox.com和wwww.ioiox.com时,浏览器默认使用80端口并自动添加http为http://ioiox.comhttp://www.ioiox.com都将因此段代码而强制跳转到https://ioiox.com
其中request_uri代表包含域名内页也将跳转到https的内页

4.jpg

配置443端口https协议重定向


如果站点没有配置SSL证书,或者不使用https协议,可以忽略以下步骤无需添加代码.

继续编辑下面的https
第一个标注为https默认443端口,同时添加ioiox.com和www.ioiox.com两个域名.
第二个标注为添加301重定向代码

 if ($host = 'www.ioiox.com') {
            return 301 https://ioiox.com$request_uri;
        }

代码解释:
此代码表示如果输入的域名为https://www.ioiox.com将重定向到https://ioiox.com
其中request_uri代表包含域名内页也将跳转到https的内页

5.jpg
保存后上传覆盖你原有的conf文件
输入nginx -t检查错误
6.jpg

重启Nginx后生效

结语

本文详解了Nginx的301重定向功能,实现跳转地址和强制https的目的,本站还介绍过Apache的301重定向教程,推荐相关文章以供参考:

Apache设置301重定向到www和强制跳转https教程


针对一级域名和www二级域名如何选择,个人建议根据你的域名实际情况而定,如果是.com/.net结尾,可以使用www来达到域名对称美,如果是以.cn/.me/.us/等短顶级域名,又或者一级域名很短(例如3位及以下),可以考虑不使用www,让域名简短易记.还有特殊结尾的字母不在一条线,例如.vip/.org/.top等也建议不使用www.以上仅供参考.

本站提供免费和付费的技术支持.你可以通过留言,邮件,QQ的方式来进行技术交流和免费咨询.同时也可以付费支持的方式获得相关的技术支持,项目部署配置等服务.具体相关详情请点击查看 技术支持页面

扫描二维码推送至手机访问。

版权声明:本文由梦魁网络资源站发布,如需转载请注明出处。

本文链接:https://family.monkui.com:39/?id=232

标签: 运维部署
分享给朋友:

相关文章

Apache设置301重定向到www和强制跳转https教程

Apache设置301重定向到www和强制跳转https教程

前言本文将详解如何配置Apache的.htaccess文件来使域名跳转到www和强制跳转到https首先在建站之前,需要确认今后网站是使用类似ioiox.com一级域名,还是www.ioiox.com二级域名,根据域名长度,使用场景,域名视...

CentOS使用OneIndex部署OneDrive免费网盘教程

CentOS使用OneIndex部署OneDrive免费网盘教程

前言本文将详解如何在CentOS上使用OneIndex程序部署OneDrive免费网盘OneIndex是一款不占服务器空间,不走服务器流量,直接列出OneDrive目录,文件在线查看和直接下载的Web源码OneIndex项目地址部署流程一、...

Oracle Cloud VPS CentOS 7 升级内核并开启官方原版BBR加速

Oracle Cloud VPS CentOS 7 升级内核并开启官方原版BBR加速

前言Oracle VPS 注册了一个多月也没有时间折腾,正好昨天能够有库存创建VPS了,于是升级了内核,开启了原版BBR,记录一下流程,新手顺着命令一步步来执行即可.重要提示由于甲骨文 CentOS 7 系统更新频繁,请参考以下日期来使用2...

国外 Linux VPS 去程回程线路路由查询教程

国外 Linux VPS 去程回程线路路由查询教程

前言每年双11,12,黑五都是VPS各种打折的季节,我也趁这段时间研究了一下国外VPS的相关知识.国外VPS的首要指标就是要速度快,那么如何判断本地与VPS之间的线路好坏,本文将介绍使用软件和命令来查询去程回程的线路路由命令.如何通过查询路...

新手入门 Github Webhooks 完美自动化部署教程

新手入门 Github Webhooks 完美自动化部署教程

前言之前使用GitHub Actions可以在提交代码后自动上传到腾讯云COS存储桶,实现静态网站完美自动化部署.那么非静态的网站或者项目需要自动化部署到VPS服务器上就可以使用GitHub Webhooks来实现.作为纯属新手来说,网上查...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。