利用 nginx 的 497状态码实现 http 跳转 https

本文将介绍怎样合理的利用 nginx 的 497 状态码实现 http 请求跳转到 https 请求。

nginx 的 497 状态码定义如下:

497 - normal request was sent to HTTPS

当 nginx 配置的站点只允许 https 访问时,我们却使用 http 去访问,此时 nginx 会报出 497 错误码。

我们就可以利用 error_page 命令将 497 状态码的链接重定向到 https。

nginx 配置如下:

server {  
    # ssl 端口
    listen    443; 
    server_name  hxstrive.com; 
    
    # 为一个 server{} 开启 ssl 支持  
    ssl    on;  
    # 指定 PEM 格式的证书文件
    ssl_certificate      cert/test.pem; 
    # 指定 PEM 格式的私钥文件
    ssl_certificate_key    cert/test.key; 

    # 让 http 请求重定向到 https 请求
    error_page  497  https://$host$uri?$args; 
}
游手好闲地学习,并不比学习游手好闲好。 —— 约翰·贝勒斯
1 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
其他应用
公众号