前言
本文将详解如何配置Nginx的conf文件来使域名跳转到www和强制跳转到https
本站示例
例如本站使用www.ioiox.com作为主域名,并使用https协议.
呈现在地址栏的主页地址为https://www.ioiox.com
呈现在地址栏的内页地址为https://www.ioiox.com/about.html
按照以下配置,我们可以实现以下跳转:
地址栏输入
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二级域名
配置80端口http协议重定向
编辑站点nginx.conf文件
第一个标注为http默认80端口,同时添加ioiox.com和www.ioiox.com两个域名.
第二个标注为添加301重定向代码
return 301 https://www.ioiox.com$request_uri;
代码解释:
此代码表示手动不输入https
只输入上面2个域名ioiox.com和wwww.ioiox.com时,浏览器默认使用80端口并自动添加http为http://ioiox.com
或http://www.ioiox.com
都将因此段代码而强制跳转到https://www.ioiox.com
其中request_uri
代表包含域名内页也将跳转到https的内页
配置443端口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的内页
保存后上传覆盖你原有的conf文件
输入nginx -t
检查错误
全站域名跳转到不含www一级域名
配置80端口http协议重定向
编辑站点nginx.conf文件
第一个标注为http默认80端口,同时添加ioiox.com和www.ioiox.com两个域名.
第二个标注为添加301重定向代码
return 301 https://ioiox.com$request_uri;
代码解释:
此代码表示手动不输入https
只输入上面2个域名ioiox.com和wwww.ioiox.com时,浏览器默认使用80端口并自动添加http为http://ioiox.com
或http://www.ioiox.com
都将因此段代码而强制跳转到https://ioiox.com
其中request_uri
代表包含域名内页也将跳转到https的内页
配置443端口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的内页
保存后上传覆盖你原有的conf文件
输入nginx -t
检查错误
结语
本文详解了Nginx的301重定向功能,实现跳转地址和强制https的目的,本站还介绍过Apache的301重定向教程,推荐相关文章以供参考: