【原创】Nginx http 跳转 https 问题

本文探讨了在未显式配置HTTP至HTTPS重定向的情况下,所有HTTP请求自动跳转HTTPS的问题。通过分析发现,这是由于Nginx配置文件中启用了HTTP2特性所致。文章详细解释了解决该问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

相关环境

环境信息

Ubuntu 20.04 LTS
Nginx 10.17.10

问题描述

使用 nginx 作为 http 服务器,发现并没有监听开启 443 端口,也没有配置 http 强制跳转 https 的配置情况下,还是会出现所有的 http 都跳转 https 的情况。

问题原因

原因是在 nginx 的配置文件中开启了 http2 的设置,http2 会要求必须使用 https 协议,如下所示:

server {
    listen       80 http2;
    server_name  localhost;
    charset utf-8;
    ...
}

解决方法

去掉 nginx 配置中的 http2 即可,如下所示:

server {
    listen       80;
    server_name  localhost;
    charset utf-8;
    ...
}

附录

参考:

https://www.nginx.com/resources/glossary/http2/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值