热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Nginx转发https

首先看看nginx转发http请求的配置文件:server{listen80;#代理监听的端口server_namelocalhost;#代理的地址location{

首先看看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后缀的文件按照以上配置文件放入即可正常启动


推荐阅读
author-avatar
美多小涛_584
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有