当前位置: 首页 > news >正文

Nginx:支持 HTTPS

文章目录

    • Nginx 开启 ssl 以支持 HTTPS
      • 1 生成本地证书
      • 2 开启 ssl 以支持 HTTPS
      • 3 将 https 的请求转发给 http
    • 最终的 nginx.conf 如下

Nginx 开启 ssl 以支持 HTTPS

[!IMPORTANT]

在下文中,将采用如下定义。

HTTP端口: 80

HTTPS端口: 443

服务地址: www.0ll1.com,也可以是 IP

1 生成本地证书

  1. 生成一个 RSA 私钥:server.key

    openssl genrsa -out server.key 2048
    
  2. 生成一个自签名的 X.509 证书:server.crt

    openssl req -new -x509 -days 8760 -key server.key -out server.crt -subj "/C=CN/O=Institute of Information Engineering, CAS/CN=www.0ll1.com"
    

2 开启 ssl 以支持 HTTPS

server {listen 443 ssl;server_name www.0ll1.com;ssl_certificate /usr/local/nginx/cert/server.crt;ssl_certificate_key /usr/local/nginx/cert/server.key;ssl_session_timeout 5m;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;ssl_prefer_server_ciphers on;
}

3 将 https 的请求转发给 http

server {location / {proxy_set_header Host $host;proxy_redirect off;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_connect_timeout 60;proxy_read_timeout 600;proxy_send_timeout 600;proxy_pass http://www.0ll1.com:80;}
}

[!NOTE]

只需要将 proxy_pass 修改为 http 服务的 url 即可。

最终的 nginx.conf 如下

server {listen 443 ssl;server_name www.0ll1.com;ssl_certificate /usr/local/nginx/cert/server.crt;ssl_certificate_key /usr/local/nginx/cert/server.key;ssl_session_timeout 5m;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;ssl_prefer_server_ciphers on;location / {proxy_set_header Host $host;proxy_redirect off;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_connect_timeout 60;proxy_read_timeout 600;proxy_send_timeout 600;proxy_pass http://www.0ll1.com:80;}
}
http://www.xdnf.cn/news/79111.html

相关文章:

  • SQL Tuning Advisor
  • [OpenGL] Lambertian材质漫反射BRDF方程的解释与推导
  • Spark-Streaming简介和核心编程
  • 发布一个npm包,更新包,删除包
  • Python基础知识语法归纳总结(数据类型-2)
  • 开源QML控件:进度条滑动控件(含源码下载链接)
  • 【Ansible】批量管理 Windows自动化运维
  • GTS-400 系列运动控制器板(六)----修改编码器计数方向
  • UML 状态图:以共享汽车系统状态图为例
  • 全面介绍AVFilter 的添加和使用
  • 基于cubeMX的hal库STM32实现硬件IIC通信控制OLED屏
  • 实战交易策略 篇十七:翻倍黑马交易策略
  • Spring Data详解:简化数据访问层的开发实践
  • Socket
  • 【数据可视化-21】水质安全数据可视化:探索化学物质与水质安全的关联
  • python 脚本引用django中的数据库model
  • UnitTest框架
  • c语言修炼秘籍 - - 禁(进)忌(阶)秘(技)术(巧)【第七式】程序的编译
  • ARM Cortex-M (STM32)如何调试HardFault
  • vite详细打包配置,包含性能优化、资源处理...
  • 突破AI检测边界:对抗技术与学术伦理的终极博弈
  • 【HarmonyOS】ArKUI框架
  • 诠视科技MR眼镜如何使用头瞄点和UGUI交互
  • Filename too long 错误
  • XML内容解析成实体类
  • Java 中 XML 处理工具类详解
  • WHAT - 静态资源缓存穿透
  • 【音视频】音频解码实战
  • Ubuntu-Linux中vi / vim编辑文件,保存并退出
  • Cline Roo Code