【Nginx】使用自生成证书配置nginx代理https

使用Nginx代理HTTPS请求并使用自签名证书,可以按照以下步骤进行配置:

  1. 生成自签名证书:

    • 打开终端或命令提示符,并导航到Nginx配置文件所在的目录。
    • 运行以下命令生成自签名证书和私钥:

    |---|------------------------------------------------------------------------------------|
    | | openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ssl.key -out ssl.crt |

    • 根据提示输入证书的相关信息,例如国家、省份、城市、组织等。
  2. 配置Nginx代理:

    • 打开Nginx配置文件(通常为nginx.conf)。
    • http块中添加一个新的server块,用于代理HTTPS请求。示例配置如下:

    |---|-----------------------------------------------------------------|
    | | nginx`server { |
    | | listen 80; |
    | | server_name example.com; |
    | | |
    | | location / { |
    | | proxy_pass http://backend_server_address; |
    | | proxy_set_header Host $host; |
    | | proxy_set_header X-Real-IP $remote_addr; |
    | | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; |
    | | } |
    | | } |
    | | |
    | | server { |
    | | listen 443 ssl; |
    | | server_name example.com; |
    | | |
    | | ssl_certificate ssl.crt; |
    | | ssl_certificate_key ssl.key; |
    | | ssl_protocols TLSv1 TLSv1.1 TLSv1.2; |
    | | ssl_ciphers 'HIGH:!aNULL:!MD5:!kEDH'; |
    | | ssl_session_cache shared:SSL:10m; |
    | | ssl_session_timeout 10m; |
    | | |
    | | location / { |
    | | proxy_pass http://backend_server_address; |
    | | proxy_set_header Host $host; |
    | | proxy_set_header X-Real-IP $remote_addr; |
    | | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; |
    | | } |
    | | ``}``` |

    • example.com替换为你的域名,backend_server_address替换为后端服务器的地址。确保将生成的证书文件(ssl.crtssl.key)的路径替换为正确的路径。
  3. 保存并关闭配置文件。

  4. 检查Nginx配置是否正确:运行以下命令,查看Nginx的错误日志中是否有任何错误:

|---|--------------------------------------------------------------------------------------------------|
| | nginx -t``` |
| | 5. 重启Nginx服务,使更改生效: |
| | ```````arduino | | |service nginx restart``` ```` |
| | 或者根据你所使用的系统,使用相应的命令重启Nginx服务。例如,在Ubuntu上可以使用`sudo service nginx restart`。 |
| | `6. 确保域名解析和证书的一致性:确保你的域名解析正确,并且指向代理服务器的IP地址。同时,确保在浏览器中访问时使用的是正确的域名,而不是IP地址。证书只有在正确使用域名访问时才会被信任。` |

相关推荐
艾伦_耶格宇21 分钟前
【ACP】阿里云云计算高级运维工程师--ACP
运维·阿里云·云计算
一位摩羯座DBA1 小时前
Redhat&Centos挂载镜像
linux·运维·centos
charlee441 小时前
nginx部署发布Vite项目
nginx·性能优化·https·部署·vite
cui_win2 小时前
【网络】Linux 内核优化实战 - net.core.flow_limit_table_len
linux·运维·网络
风清再凯2 小时前
自动化工具ansible,以及playbook剧本
运维·自动化·ansible
深圳安锐科技有限公司2 小时前
深圳安锐科技发布国内首款4G 索力仪!让斜拉桥索力自动化监测更精准高效
运维·安全·自动化·自动化监测·人工监测·桥梁监测·索力监测
猫头虎2 小时前
猫头虎 AI工具分享:一个网页抓取、结构化数据提取、网页爬取、浏览器自动化操作工具:Hyperbrowser MCP
运维·人工智能·gpt·开源·自动化·文心一言·ai编程
游戏开发爱好者83 小时前
iOS App首次启动请求异常调试:一次冷启动链路抓包与初始化流程修复
websocket·网络协议·tcp/ip·http·网络安全·https·udp
2501_915106323 小时前
频繁迭代下完成iOS App应用上架App Store:一次快速交付项目的完整回顾
websocket·网络协议·tcp/ip·http·网络安全·https·udp
CRMEB定制开发4 小时前
【实战】CRMEB Pro 企业版安装教程(附 Nginx 反向代理配置 + 常见问题解决)
nginx·商城系统·微信商城·crmeb