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

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

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

前言

本文将详解如何配置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

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

相关文章

OLAINDEX另一个OneDrive目录索引应用部署教程

OLAINDEX另一个OneDrive目录索引应用部署教程

前言由于OneIndex非常受欢迎,一些优秀的开发者受OneIndex启发,开发出各种OneDrive目录索引应用,例如OLAINDEX,PyOne,CuteOne等等.其功能和主题非常丰富,本文将介绍使用OLAINDEX来部署OneDri...

OneDrive多网盘文件浏览系统PyOne安装配置教程

OneDrive多网盘文件浏览系统PyOne安装配置教程

前言本文将详细介绍OneDrive多网盘文件浏览系统PyOne的安装流程PyOne是一款基于Python-Flask的onedrive文件本地化浏览系统,使用MongoDB储存文件列表,使用redis缓存数据,支持绑定多个网盘,极大的提高使...

CentOS 7 挂载腾讯云COS对象存储教程

CentOS 7 挂载腾讯云COS对象存储教程

前言本文将详解使用腾讯云cosfs工具将COS对象存储的存储桶挂载到CentOS 7服务器的教程.其他平台及常见问题请参考官方说明:腾讯云COSFS 工具COSFS 工具类常见问题安装COSFS工具获取源码git clone&nb...

Linux 服务器 docker 部署 AWTRIX 2.0 Server

Linux 服务器 docker 部署 AWTRIX 2.0 Server

前言之前帮一位朋友部署油管粉丝数显示牌的服务端.由于特殊需求,需要把AWTRIX的服务器端部署到 VPS 服务器上.本文将介绍如何在 VPS 服务器上使用 docker 部署 AWTRIX 2.0 Server 服务器端.同时推荐好友的 Y...

docker compose 部署配置 Awesome TTRSS 教程

docker compose 部署配置 Awesome TTRSS 教程

前言博主是一个 RSS 重度使用者,早已不记得是何时开始,也许大概是 Google Reader 那个时代,至今已经十几年,保持着每天睡前阅读的习惯.自 Google Reader 关闭服务...

Nginx 配置 OCSP Stapling 优化 HTTPS 访问

Nginx 配置 OCSP Stapling 优化 HTTPS 访问

前言由于国内网络对 Let's Encrypt 域名证书的 OSCP 服务器域名进行了 DNS 污染,用户在访问网站时,请求 OSCP 服务器的过程会导致网站访问速度很慢.本文将介绍如何通过配置网站的 nginx 来预先装订 OCS...

发表评论

访客

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