!
也想出现在这里? 联系我们
广告位
当前位置:首页>教程分享>服务器教程>解决Nginx“The plain HTTP request was sent to HTTPS port”报错方法

解决Nginx“The plain HTTP request was sent to HTTPS port”报错方法

问题现象:Nginx站点中域名部署好了SSL证书,使用https://blog.tag.gg方式访问出现报错“400 Bad Request:The plain HTTP request was sent to HTTPS port”检查证书配置和端口监听等没有发现问题,最终通过分析nginx配置文件规则解决了这个问题。

解决Nginx“The plain HTTP request was sent to HTTPS port”报错方法

问题原因:报错字面理解意思为“ 普通HTTP请求已发送到HTTPS端口 ”一般情况是nginx部署证书的规则中有使用“ssl on;”参数。
解决方法:
1、分析nginx站点ssl证书部署规则,原本的规则如下

server {
    listen       443;
    server_name blog.tag.gg;
    charset UTF-8;
    ssl on;
    ssl_certificate   /ssl/blog.tag.gg.pem;
    ssl_certificate_key  /ssl/blog.tag.gg.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

分析上面规则看有启用“ ssl on;”监听设置规则为“ listen   443;
2、将“ ssl on;”注释掉,将 listen   443;”修改为 “listen       443 ssl;
修改后的规则如下:

server {
    listen       443 ssl;
    server_name blog.tag.gg;
    charset UTF-8;
    #ssl on;
    ssl_certificate   /ssl/blog.tag.gg.pem;
    ssl_certificate_key  /ssl/blog.tag.gg.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

修改后记得重载nginx服务使其生效。

给TA打赏
共{{data.count}}人
人已打赏
服务器教程

虚拟机扩展Linux根目录磁盘空间(Centos)

2021-4-17 18:35:03

服务器教程

IIS重启失败,日志报在启动Windows Process Activation Service时,出现错误13:数据无效 处理方法

2021-4-17 18:35:05

声明 本站上的部份代码及教程来源于互联网,仅供网友学习交流,若您喜欢本文可附上原文链接随意转载。无意侵害您的权益,请发送邮件至 [email protected] 或点击右侧 私信:吉吉国王 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
OneEase