当前位置: 首页 > 工具软件 > https > 使用案例 >

Nginx转发https

邹杰
2023-12-01

首先看看nginx转发http请求的配置文件:

    server {

        listen       80;#代理监听的端口

        server_name  localhost;#代理的地址

        location / {

            proxy_pass  http://www.xxx.com; #需要跳转的地址

        }

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

        }

    }

以上配置文件中,访问localhost:80即可跳转到http://www.xxx.com中。

跳转到https中最重要的就是需要配置ssl证书:

>

   server {

        listen    8084 ssl; #代理监听的端口

        server_name  192.168.1.201; #代理的地址

        ssl_certificate    cert/server.crt;  #crt证书路径,存放位置Nginx的conf/cert文件夹下,可以使用绝对路径

        ssl_certificate_key cert/server.key; #crt证书key路径

        ssl_session_timeout 5m; #会话超时时间

        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;  #加密算法

        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #表示使用的TLS协议的类型。

        ssl_prefer_server_ciphers on;

        # 拦截api请求

        location / {

                proxy_pass  https://www.xxx.com; #跳转的地址

        }

    }

以上配置文件中,最重要的就是ssl证书和key,ssl证书和key可以使用openssl生成自签名证书,生成步骤如下:

1、进入OpenSSL工作空间:

openssl

2、生成一个私钥key

genrsa -des3 -out server.key 2048 

3、使用以上key生成csr签名请求

req -new -key server.key -out server.csr

4、删除私钥中的密码,否则在启动时需要输入密码

rsa -in server.key -out server.key

5、生成证书

 x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

后续只需要将crt格式的后缀和key后缀的文件按照以上配置文件放入即可正常启动

 类似资料: