使用Nginx实现https请求转发http实践
作者:☀Mark_LY
这篇文章主要介绍了使用Nginx实现https请求转发http实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
Nginx实现https请求转发http
在项目正式上线时,一般会申请域名和证书来实现https的服务,这种情况我们使用Nginx的代理功能即可完美实现上线需求,无需修改项目;话不多说,上干货。
使用nginx转发https请求需要nginx安装插件
在安装nginx的时候,编译时需要安装ssl插件
./configure --prefix=/nginx安装路径 --with-http_stub_status_module --with-http_ssl_module --with-stream_ssl_module
然后
正常执行完nginx安装步骤即可
Nginx的安装与配置这里省略,我这里主要说明https请求代理成http如何配置,
进入nginx安装目录,找到nginx.conf配置文件,进入编辑(vi nginx.conf)
server {
listen 8094 ssl; #监听端口号--即位代理后的端口号
server_name localhost;
client_max_body_size 100m;
ssl_certificate /usr/local/nginx-1.19.4/conf/aaa.crt; #证书公钥路径
ssl_certificate_key /usr/local/nginx-1.19.4/conf/bbb.key; #证书私钥路径
location /{
client_max_body_size 100m;
proxy_pass http://127.0.0.1:9004; #项目地址和端口号
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
上述这一段配置即为,当访问8094端口时,
例如
我nginx的服务器IP为198.32.23.23,域名是www.ly.com,当我们访问https://www.ly.com.8094时,
实际是通过nginx转发到了http://127.0.0.1:9004这个地址,即为我们项目的地址;就实现了https到http的转发。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
