成航先森 成航先森

成都航院计算机系一个学生的个人博客

 

系统运维

  • 没有分类目录

最新文章

系统运维
当前位置: 首页 » 系统运维 » 解决Nginx报错The plain HTTP request was sent to HTTPS port

解决Nginx报错The plain HTTP request was sent to HTTPS port

编辑:狂族晨曦 来源:系统运维经验杂笔 日期:2016-12-09 阅读: 60,534 次 3 条评论 » 百度已收录

最后更新时间:2022-04-02

先森给现网业务搭建了Nginx做反向代理服务,包括http协议和https协议,结果申请公网IP后访问发现报错“The plain HTTP request was sent to HTTPS port”。经过一番研究后解决了问题,这里做个记录。

Nginx 400错误

Nginx 400错误

解决问题

解决方式1:

使用https://ip:port/*方式访问,如果直接ip:port/*则是http协议,所以会报错The plain HTTP request was sent to HTTPS port(普通的HTTP请求被发送到HTTPS端口)

解决方式2:

打开配置文件,查看HTTPS server段的配置:

修改前:

server {
        listen       443 ssl;
        server_name  localhost;
        ...
}

修改方式,将监听端口后的“ssl”删除,即:

server {
        listen       443;
        server_name  localhost;
        ...
}

这样再直接用ip:port/*访问则不会再报The plain HTTP request was sent to HTTPS port错误了。

标签:
除特别注明外,本站所有文章均为成航先森 www.capjsj.cn 原创,本文共521个字
转载请注明出处来自https://www.capjsj.cn/nginx_400_https_error.html
已有 3 位"计工"发布了激烈的评论,还有N多人围观笑而不语评论
的头像
欢迎发表评论
取消评论

表情
疑问调皮伤心抠鼻黑线微笑可爱奸笑震惊吓到了撇嘴大兵忍不住笑笑狂骂狂怒噢?鼓掌酷⊙﹏⊙b汗鄙视大哭嘿嘿

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. 的头像

    因为443是https端口,欲使用443作http端口,nginx中注释ssl on;即可。
    就好像你访问 https://ip.com:80 你的80是http协议,也会报同样错误。

    2016-12-09 20:27 回复
  2. 的头像

    听说Nginx的性能很不错的!

    2016-12-17 22:31 回复
  3. 的头像

    我的只想要http 防卫
    server {
    ssl off; #无论是否去掉这一行,都是报这个错误,
    server_name media.zhoulujun.cn;#填写绑定证书的域名
    listen 80;
    root /data/wwwroot/zhoulujun/media;

    }

    2019-01-10 14:18 回复
官方微信
发表评论 返回顶部