美文网首页
NGINX配置https

NGINX配置https

作者: QTong | 来源:发表于2018-12-07 14:22 被阅读0次

一安装nginx

yum install nginx.x86_64


二配置 nginx conf

1.反向代理+负载均衡:

server {

        listen 80 ;

        server_name  api.abc.com apc.aaa.com;

        charset UTF-8;

        location / {

                proxy_pass http://api;#调用负载均衡upstream api

              #proxy_pass  http://127.0.0.1:8010  这个效果一样 只是反向代理

                proxy_redirect off;

                proxy_set_header Host $host;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                proxy_set_header Upgrade $http_upgrade;

                proxy_set_header Connection "upgrade";

        }

        error_page 500 502 503 504 /50x.html;

        location = /50x.html {

                root html;

        }

}

upstream api{

        server 127.0.0.1:8010 weight=1 max_fails=2 fail_timeout=600s;

        #server 10.121.121.5:8083 weight=1 max_fails=2 fail_timeout=600s;

}

2.静态网页转发

2.1简单 server {

        listen 80 ;

        server_name ancxx.com;

        charset UTF-8;

        root /website/abcxx;

        location /{

                index index.html;}

        error_page 500 502 503 504 /50x.html;

        location = /50x.html {           root html; }

}

2.2 加点盐

server {

        listen 80 ;

        server_name admincy.abc.com;

        charset UTF-8;

        root /website/cy/admin/;

        client_max_body_size  200m;

        location / {

              index index.html;

        try_files $uri $uri/ /index.html;

        }

        location /api/admin/admin {

        proxy_pass http://amanagerapi.abc.com/admin;

        }

        location /api/restaurant/admin {

        proxy_pass http://amanagerapi.abc.com/restaurant;

        }

        error_page 500 502 503 504 /50x.html;

        location = /50x.html {root html;   }

}

3 https配置

3.1  简化

server{

listen 443 

#开启  如果把ssl on;这行去掉,ssl写在443端口后面。这样http和https的链接都可以用

ssl on;

ssl_certificate cert/server.crt;#证书(公钥.发送到客户端的,在/etc/nginx/cert/下)

ssl_certificate_key cert/server.key;#私钥,

server_name www.daj.com;#下面是绑定域名

location / {

proxy_redirect off; #禁止跳转

proxy_pass https://www.tao.com/;#代理淘宝}

}

3.2 项目实例

server {

        listen 443;

        server_name qh.abc.com;

        ssl on;

        ssl_certificate  cert/server.pem;

        ssl_certificate_key cert/server.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;

        ssl_prefer_server_ciphers on;

        charset UTF-8;

        location / {

                proxy_pass http://qh;

                proxy_redirect off;

                proxy_set_header Host $host;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                proxy_set_header Upgrade $http_upgrade;

                proxy_set_header Connection "upgrade";

        }

        error_page 500 502 503 504 /50x.html;

        location = /50x.html {

                root html;

        }

}

upstream qh{

        server 127.0.0.1:8001 weight=1 max_fails=2 fail_timeout=600s;

        #server 10.121.121.5:8083 weight=1 max_fails=2 fail_timeout=600s;

}

三 生成证书

注意:一般生成的目录,应该放在nginx/conf/ssl目录

1.创建服务器证书密钥文件 server.key:

openssl genrsa -des3 -out server.key 1024

输入密码,确认密码,自己随便定义,但是要记住,后面会用到。

2.创建服务器证书的申请文件 server.csr

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

输出内容为:

Enter pass phrase for root.key: ← 输入前面创建的密码

Country Name (2 letter code) [AU]:CN ← 国家代号,中国输入CN

State or Province Name (full name) [Some-State]:BeiJing ← 省的全名,拼音

Locality Name (eg, city) []:BeiJing ← 市的全名,拼音

Organization Name (eg, company) [Internet Widgits Pty Ltd]:MyCompany Corp. ← 公司英文名

Organizational Unit Name (eg, section) []: ← 可以不输入

Common Name (eg, YOUR name) []: ← 此时不输入

Email Address []:admin@mycompany.com ← 电子邮箱,可随意填

Please enter the following ‘extra’ attributes

to be sent with your certificate request

A challenge password []: ← 可以不输入

An optional company name []: ← 可以不输入

4.备份一份服务器密钥文件

cp server.key server.key.org

5.去除文件口令

openssl rsa -in server.key.org -out server.key

6.生成证书文件server.crt

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

#小程序不支持自签名的https!!

也可以通过第三方证书机构申请 key和pem

相关文章

  • # nginx https证书配置

    nginx https证书配置 一 前言 此文档针对于nginx配置反向代理使用https证书方法 nginx作为...

  • nginx https 配置

    nginx https 配置

  • nginx配置https

    nginx配置https https需要的证书我们已经申请到了,下面分享下nginx配置https的一些配置参数!...

  • Nginx配置https请求,以及Nginx+keepalive

    一、Nginx配置https请求 要实现Nginx配置https请求,安装的时候需要加上 --with-http_...

  • nginx配置https

    只配置443会导致http和https共存,只要再80里配置个重定向即可return 301 https://$s...

  • nginx https配置

    本地文件上传到服务器

  • Nginx https 配置

    准备环境阿里云 腾讯云部署好站点,且使用DNS解析到云服务器的IP地址 接下来就是配置HTTPS的关键步...

  • Nginx配置HTTPS

  • Nginx 配置 https

    从云服务提供商处申请证书 申请 https 证书教程-百度经验 申请下来的证书目录结构 下文中只拿 Nginx 来...

  • NGINX 配置 HTTPS

    首先是下载证书,我的是再阿里云里面,如果购买成功了,直接下载证书。里面会有两后缀分别为.key和.pem的个文件,...

网友评论

      本文标题:NGINX配置https

      本文链接:https://www.haomeiwen.com/subject/ihjthqtx.html