怎么把 https 重定向到 http 协议上

2017-06-22 17:56:46 +08:00
 qsnow6
发现在一些 APP 上强行把 HTTP 协议的 URL 转换成 HTTPS,因为没有做 HTTPS 的认证,所以就打不开网站了。。。

在没有 HTTPS 的证书情况下,怎么把 HTTPS 的流量重定向回 HTTP 上
4365 次点击
所在节点    Python
10 条回复
Yc1992
2017-06-22 18:01:16 +08:00
降级攻击?
Genteure
2017-06-22 18:07:40 +08:00
既然没有 HTTPS,这个应该实现不了吧。。重定向之前总是要连到一个什么服务器上的。
现在证书这么好弄,配个更好吧,Let's Encrypt 之类的
hjc4869
2017-06-22 18:12:15 +08:00
cloudflare
wujunze
2017-06-22 18:25:06 +08:00
用 Nginx 的 rewrite 试试?
```shell
server {
listen 80;
server_name my.domain.com;
[....]
}

server {
listen 443 ssl;
server_name my.domain.com;
return 301 http://$server_name$request_uri;
}
```
简化的 Nginx 配置文件,楼主可以参考一下
qsnow6
2017-06-22 18:31:11 +08:00
@wujunze 谢谢,我试下
haitang
2017-06-22 18:36:51 +08:00
没证书……就算加了跳转也会先提示证书错误吧,甚至如果没有部署监听 443,可能直接就打不开了
coo
2017-06-22 18:39:17 +08:00
这是不可行的,首先这需要能通过 HTTPS 访问你的网站。

但是能通过 HTTPS 访问了,还转 HTTP 干啥?
misty8873
2017-06-22 19:12:27 +08:00
ios 都必须 SSL 把。。
my3157
2017-06-22 20:54:19 +08:00
#首先, 要 https 能访问

然后可以这样

```
if ( $scheme = https ){
return 301 http://$server_name$request_uri;
}
```
cxbig
2017-06-23 14:34:36 +08:00
打不开网站,应该是 nginx 没有监听 443 端口,按 4 楼说的补齐配置就好。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/370384

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX