nginx配置SSL,开启HTTPS

2019-04-29  本文已影响0人  晓函

首先购买SSL证书https://freessl.cn
我选的是免费一年的TrustAsia

image.png

购买完成后,配置证书
填上域名、国家、公司等信息,通过CNAME填写TXT方式验证域名所有权,
自动生成私钥和公钥。

image.png

下载文件,找到nginx文件夹,里面有两个文件.key和.pem


image.png

上传到服务器,比如/etc/ssl目录或者网站的www目录,位置随意,nginx配置中写正确位置就行,
然后配置NGINX就行了。

下面我用做NGINX反代https

cd /etc/nginx/sites-available/
vi mysite-ssl

写入:

server {
        #====配置SSL代码  start====
        listen 443 ssl;
        root /var/www/robotsearch;
        index index.html index.htm

        server_name s.ggmiao.com;

        ssl on;
        #ssl证书文件位置(常见证书文件格式为:crt/pem)
        ssl_certificate      /var/www/robotsearch/ssl/s.ggmiao.com.pem;
        #ssl证书key位置
        ssl_certificate_key  /var/www/robotsearch/ssl/s.ggmiao.com.key;

        ssl_protocols       TLSv1 TLSv1.1 TLSv1.2;
        #数字签名,此处使用MD5
        ssl_ciphers  HIGH:!aNULL:!MD5;

        #====配置SSL代码  end====

       #反代代码
        location / {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header HostX $http_host;#真实服务器优先识别这个参数作为host判断
            proxy_set_header CustomValue "thisistest";
            proxy_set_header Host "www.haohuodog.com";#伪造host头为一个已备案域名,防止因为未备案被腾讯云拦截

            proxy_redirect off;
            if (!-f $request_filename) {
                proxy_pass http://191.122.105.35:80;
                break;
            }
        }

}

保存后

cd /etc/nginx/sites-enabled
#添加引用链接
ln -s /etc/nginx/sites-available/mysite-ssl ./mysite-ssl
#查看引用是否成功
ls -l
#测试
nginx -t
#重启
service nginx restart
上一篇下一篇

猜你喜欢

热点阅读