nginx配置http请求转成https请求

这篇具有很好参考价值的文章主要介绍了nginx配置http请求转成https请求。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、return 301

server {
   listen 80;
   server_name www.baidu.com;
   return 301 https://$http_host$request_uri;
   access_log  off;
}

2、rewitre

server {
    listen 80;
    server_name  www.baidu.com ;
    rewrite ^(.*) https://$server_name$1 permanent;
}

3、error_page

原理:

http和https是tcp的上层协议,当nginx服务器建立tcp连接后,根据收到的第一份数据来确定客户端是希望建立tls还是http。nginx会判断tcp请求的首写节内容以进行区分,如果是0x80或者0x16就可能是ssl或者tls,然后尝试https握手。如果端口开启了https,但请求过来的并不是,会抛出一个http级别的错误,这个错误的状态码是NGX_HTTP_TO_HTTPS,错误代码497,然后在返回response中会抛出一个400错误(因为497不是标准状态码,丢给浏览器也没有用),这时浏览器会显示"400 Bad Request,The plain HTTP request was sent to HTTPS port"

server {
    listen 80 ssl;
    listen www.baidu.com:80;    #此处添加你要该链接访问的域名
    server_name  www.phpmianshi.com ;
    error_page 497 https://$host:8080$request_uri; #此句最关键,重新定义端口
    #error_page 497 https://$http_host$request_uri; #此句最关键,只是将http改为https,其他不变
}

参考博客:nginx中http转https的几种方式_运维_PHP面试网文章来源地址https://www.toymoban.com/news/detail-730578.html

到了这里,关于nginx配置http请求转成https请求的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • nginx配置http强制跳转https

    一、什么是Nginx? Nginx是一个高性能的HTTP和反向代理Web服务器,同时也提供IMAP/POP3/SMTP服务。Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3/SMTP)代理服务器。Nginx的特点是:占有内存少,并发能力强。 Nginx专门为性能优化而开发,性能是最重要的考量,非常

    2024年02月16日
    浏览(55)
  • Nginx配置springboot+vue项目http跳转https

    java生成证书 添加依赖 复制keystore到springboot资源目录,修改application.yml配置  启动项目 nginx配置 开启ssl     重启nginx -s reload 访问localhost:81将跳转到https://localhost/login?redirect=/index  

    2024年02月12日
    浏览(51)
  • 详解禁止浏览器 http自动跳转成https

    在Web开发中,禁止浏览器在HTTP请求中自动跳转到HTTPS是通过设置HTTP响应头中的Strict-Transport-Security(HSTS)字段来实现的。HSTS是一个安全策略,它告诉浏览器在一定的时间内强制使用HTTPS连接来加载网站,从而提高网站的安全性。 以下是通过设置HSTS头来禁止浏览器在HTTP请求中

    2024年02月04日
    浏览(67)
  • 【nginx】配置将HTTPS请求转换成HTTP

    要将HTTPS请求转换为HTTP请求,可以在Nginx的配置文件中添加以下配置: 打开Nginx的配置文件,通常位于 /etc/nginx/nginx.conf 或 /etc/nginx/conf.d/default.conf 。 在 server 块中添加以下配置,将HTTPS请求转发到后端的HTTP服务: 将 yourdomain.com 替换为你的域名, /path/to/your/ssl_certificate.crt 和

    2024年02月10日
    浏览(51)
  • 解决nginx已配置但访问依旧跳转到nginx的欢迎页面

    1、确定nginx.conf配置没有问题 2、确保修改了nginx.conf文件后重启了nginx,nginx -s reload 3、查看是否有两个nginx在运行,如果有两个nginx运行,则停止nginx再重新启动         查看nginx运行:ps -ef | grep nginx         停止nginx:nginx -s stop         启动nginx:nginx 重新访问页面,

    2024年02月02日
    浏览(47)
  • Nginx实现本地http转https请求

    目录 前言: 一、安装nginx 二、安装OpenSSL          1、下载OpenSSL:          2、配置环境变量:                   2.1:配置环境变量,OpenSSL_HOME                    2.2:配置path  三、生成https证书          1、创建ssl文件夹用于存放证书。创建私钥 (建议使用系统窗口,

    2024年01月20日
    浏览(46)
  • nginx 如何将 https 请求转发到 http

    网站之前是 https 的,通过 nginx 设置好了,现在不想用 https 了,但发散到外界的一些网址还是 https 的,此时只能通过 nginx 去转发 https 请求到 http 才能实现之前的链接能正常访问。 具体设置如下: https 的其它设置不需要动,只需要在 server 字段添加一条:

    2024年02月11日
    浏览(58)
  • 使用nginx-lua配置统一url自动跳转到hadoop-ha集群的active节点

    下载安装nginx所用的依赖 下载nginx 稍后安装nginx 安装lua语言 安装LuaJIT,安装路径/opt/luaJIT-2.1.0自行设置 设置环境变量 打开: vi /etc/profile 保存: . /etc/profile 下载ngx_devel_kit(NDK)模块 :https://github.com/simpl/ngx_devel_kit/tags,不需要安装,记住存放位置/opt/luaJIT-2.0.5/package/ngx_deve

    2024年02月10日
    浏览(54)
  • Nginx接收Http协议请求转发使用Https协议

    公司使用阿里的apigateway,规定不太友好,同是SIT环境,A系统的SIT1环境居然不能调用B系统的SIT2环境的接口。因为各个系统之间部署的SIT环境数量不同A系统可能只有1套,B系统可能有8套,这样的话,可能会随时切换调用B系统的环境,管理员不允许,于是想着用Nginx做下转发。

    2024年02月08日
    浏览(64)
  • tengine/nginx https请求 转发 http upstream

    当前的互联网应用基本都要支持https协议,而当浏览器头通过https协议将请求发到到负责负载的nginx后,会由当前nginx再以http协议向后端upstream进行请求,之所以这么做是因为https协议的安全性也带来的额外的性能消耗。而源端基本都是在一个内网里面的,对于通讯协议的安全性

    2024年01月23日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包