LNMP下HTTP强制跳转HTTPS的几种方式方法

发布时间:2022-06-23 09:56 来源:资源部落 阅读:50 作者:资源部落 栏目: 经验分享 欢迎投稿:712375056

现在越来越多的网站都启用https访问了,SSLssl/' target='_blank'>证书也不贵,还有一些免费的比如Let’s Encrypt或者腾讯也有提供1年免费证书等等,加上https有更好的安全,甚至有人说以后搜索引擎都更青睐https的网站…今天就记录下在HTTP强制跳转HTTPS的几种方式方法,方便哪天我要加SSL的时候使用。

我们需要修改域名配置文件,这里我以军哥LNMP环境为例,路径在/usr/local/nginx/conf/vhost/

如上图,选择部分就是添加的跳转内容,通常我们有多种写法方式,下面列举。

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

No.2
server_name zrblog.net ;
rewrite ^(.*) https://www.zrblog.net$1 permanent;

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

No.4
server_name zrblog.net ;
return 301 https://$server_name$request_uri;

延伸:

如果网站不是采用的NGINX而是APACHE,那就更加简单了,直接在网站根目录修改.htaccess文件,加入:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.zrblog.net$ [NC]
RewriteRule ^(.*)$ https://www.zrblog.net/$1 [L,R=301]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.zrblog.net/$1 [L,R=301]

这样的话,除了不加www的域名访问,也会自动跳转到www域名并HTTPS访问。

NGINX的其他写法方式:

rewrite ^(.*)$? https://$host$1 permanent;  #1
return 301 https://$server_name$request_uri; #2
if ($host ~* "^zrblog.net$") {
rewrite ^/(.*)$ https://www.zrblog.net/ permanent;
}     #3
if ($host = www.zrblog.net) {
rewrite ^/(.*)$ http://www.zrblog.net permanent;
}    #4

以上搜集自网络,如有错漏,请大家帮忙指正!谢谢。

来源链接:https://www.zyhot.com/article/580.html

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和分享为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们QQ:712375056,同时欢迎投稿传递力量。