栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

解决The plain HTTP request was sent to HTTPS port

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

解决The plain HTTP request was sent to HTTPS port

问题

现在越来越多的网站要求http访问转为更为安全的https访问,很多使用nginx部署的前端应用可以很方便的使用反向代理来实现,切换后,用http访问就会出现 "The plain HTTP request was sent to HTTPS port"的错误页面。

解决思路

将此错误页面重定向到指定的https地址即可

解决方法

假设端口号是8443:

server {
    listen 8443 ssl;
    ssl_certificate ssl_cert.pem;
    ssl_certificate_key ssl_server.key;
    server_name your_domain.com;
    error_page 497 https://$host$uri?$args;
    location / {
        ....
    }
}

另外,如果是自有域名,http和https端口都使用默认端口的话,只要将http的请求重定向到https即可

server {
    listen 80;
    listen 443 ssl;
    ssl_certificate ssl_cert.pem;
    ssl_certificate_key ssl_server.key;
    server_name your_domain.com;
    if ($scheme = http) {
        return 301 https://$host$uri?$args;
    }
    location / {
        ....
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/845483.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号