关注VPS主机与
服务器促销分享

Nginx环境强制http 301跳转https设置记录

如今越来越多的网站开始启用SSL证书,这个也是趋势。老左也在考虑是不是启动,但是考虑到页面主题中很多都是手工设置的,要是切换过来比较麻烦,所以近期在考虑抽点时间把主题换掉,然后在合适的时候启用SSL证书。在年后升级火狐浏览器看到部分有些非HTTPS网站在地址栏中也有提示,所以这个也是一个趋势,但也并不是绝对,毕竟普通的网站并非交互性质,也没有必要HTTPS。

如果我们在http切换https之后,势必肯定需要地址的唯一性,需要设置301跳转强制https,这里简单做一个记录技术文档,整理几个Nginx实现强制http跳转https的脚本代码,以后有需要的时候可以直接复制用到。

第一、Nginx配置文件修改地址

/usr/local/nginx/conf/vhost

一般我们常用的一键包或者是自己配置的可能稍微有点差异,我们需要找到当前网站所在的.conf配置文件,记得在修改之前需要备份,以免改错。

第二、常见的几个可用301跳转方法

server
  {
    listen 80;
	#listen [::]80;
	server_name ssl.zyhot.com;
	index index.html index.htm index.php default.html default.htm default.php;
	root  /home/wwwroot/ssl.zyhot.com;
	if  ($scheme = http) {
	return 301 https:$host$request_url;
	}
	include wordpress.conf;
	#error page  404 /404.html;

	#Deny access to PHP files in specific directory
	#location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }

修改配置文件

第一:

if ($scheme = http ) {
 return 301 https://$host$request_uri;
 }

第二:

server_name zyhot.com ;
 rewrite ^(.*) https://zyhot.com$1 permanent

将域名换成自己的域名。

第三:

if ($server_port = 80 ) {
 return 301 https://$host$request_uri;
 }

这个与第一种差不多。

server_name zyhot.com ;
return 301 https://$server_name$request_uri;

只需要将域名换成自己的域名。

最后,我们修改替换之后,需要重启nginx才可以生效。

本文转自: 老左博客

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权, 转载请注明出处。
文章名称:《Nginx环境强制http 301跳转https设置记录》
文章链接:https://www.zyhot.com/article/1527.html
关于安全:任何IDC都有倒闭和跑路的可能,月付和备份是您的最佳选择,请保持良好的、有规则的备份习惯。
本站声明:本站仅做信息分享,不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本站请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本站,即表示您已经知晓并接受了此声明通告。

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册