VPS侦探论坛

 找回密码
 注册
查看: 2677|回复: 1

http重定向到https

[复制链接]
发表于 2020-12-14 15:56:13 | 显示全部楼层 |阅读模式

使用 lnmp 搭建的环境建站程序是 wordpress

域名 xxx.com 和 www.xxx.com
使用 lnmp ssl add 添加了免费证书

现在下面4个地址都可以访问
http://xxx.com
https://xxx.com
http://www.xxx.com
https://www.xxx.com

想实现 http 重定向到 https

方法一:

按照帖子 https://lnmp.org/faq/lnmp-nginx-301-rewrite.html 中操作:

在 listen 80 server 段
location ~ /.well-known {            allow all;        }
下面添加
location / {            return 301 https://$host$request_uri;    }
然后保存退出,重启nginx
/etc/init.d/nginx restart


提示:duplicate location / ...


#####################################################################

方法二:

还是找到/usr/local/nginx/conf/vhost中的配置文件(有2个)
一个是xxx.com.conf
一个是www.xxx.com.conf

在 xxx.com.conf 中 listen 80 server 段
server_name 下面
添加 return 301 https://$host$request_uri;
或者 return 301 https://xxx.com$request_uri; 都可以
保存退出,重启 nginx 后,http 重定向到 https 成功
浏览器不论输入 http://xxx.com 或 http://www.xxx.com 都自动跳转到 https 了。

######################################################

疑问一:

return 301 https://$host$request_uri; 和
return 301 https://xxx.com$request_uri; 有什么区别?

疑问二:

为啥我就改了 vhost 文件夹中 xxx.com.conf 一个文件
浏览器不论输入 http://xxx.com 或 http://www.xxx.com 都自动跳转到 https 成功了呢?
理论上应该把 vhost 文件夹中的两个文件都修改一下的啊











美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
发表于 2020-12-15 08:17:35 | 显示全部楼层


你不贴出配置文件来怎么找问题
duplicate location / 有可能是你之前有include 伪静态文件

$host 是根据域名判断
你单独写的域名就按填写的域名301

wordpress程序自带301,安装时的域名为主域名,不是主域名访问的会301跳转
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|VPS侦探 ( 鲁ICP备16040043号-1 )

GMT+8, 2024-9-21 08:09 , Processed in 0.025389 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表