详解阿里云Linux服务器配置Htpps+Nginx

背景

阿里云 ECS,操作系统为 CentOS 7

 

部署配置

第一步,安装nginx

之所以要先安装 nginx,是因下面配置域名解析的候可以直接在浏览器看到效果,然了,先配置域名,然后 ping 一下也是可以的

Nginx包,解包,入解后的目编译配置,命令如下:

./configure –prefix=/usr/local/nginx –with-http_ssl_module

 

第二步,申及解析域名

要申域名,就不多了,站想要外部访问得有域名不成直接用 IP 访问吗。就算非得用 IP访问,那不起,下面配置 HTTPS证书候需要填写域名。
阿里云-万查询你要注的域名,如果有被注, 可以直接购买,好的域名早就被域名倒手或者注商自己注了,一般的域名,比如以公司名品名缩写的域名,一般是不有人注这样的域名也相便宜,基本一年不会过百的。 

购买完域名后,需要完成一系列相信息的填写,可按提示完成即可。然后行域名解析

入云解析,看到所具有的万域名,中一域名,点下方的“添加解析”按

image.png

 

 第三步 申 SSL 证书

入阿里云控制台,“安全(云盾)”下的“证书,点击购买证书选择型 DV SSL,按提示走就可以,反正不用花的。

接下到我的订单页面,看到证书状态是“待完成”,点全”

image.png

image.png

 

 选择的是 DNS 验证方式,点击进度按会弹出提示框,按提示框中的操作添加一DNS记录。(文件验证方式要求html文件放到服器指定的目下,然后通url访问到即可验证成功)

 

直到我的订单页证书状态为签发,即表示证书成功。

再之后在我的订单列表中,操作看到下,点,跳证书载页面,里提供了nginx、Apache、Tomcat等证书

 

image.png

 

 

选择 nginx 证书

第四步 在 nginx 中配置 HTTPS

证书,里面有两个文件一是.key,另一是.pem,把这两个文件到服器的一中。

 

找到 nginx 配置文件,打开编辑,加入如下代

 
    server {
      listen        80;
      server_name   vueapp.xxx.cn;
      return 301    https://$host$request_uri;
    }
   
    # HTTPS server
    server {
        listen 443;
        server_name vueapp.xxx.cn;
        ssl on;
        root html;
        index index.html index.htm;
        ssl_certificate   cert/xxx.pem;
        ssl_certificate_key  cert/xxxx.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;
        location / {
            proxy_set_header  X-Forwarded-Host $host;
            proxy_set_header  X-Forwarded-Proto $scheme;
            proxy_set_header  X-Real-IP  $remote_addr;
            proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_redirect off;
            expires off;
            sendfile off;
            proxy_pass http://vueapp.xxx.cn;
        }
    }

 

安装问题

如果出“[emerg] 10464#0: unknown directive "ssl" in /usr/local/nginx-0.6.32/conf/nginx.conf:74”则说ssl块编译进nginx,在configure的候加上“–with-http_ssl_module”即可

 

nginx: [emerg] unknown directive "ssl" in /usr/local/nginx/conf/nginx.conf:887

 

方式: http://blog.csdn.net/giianhui/article/details/62228825

 

 

 

考:

 

https://www.cnblogs.com/saneri/p/5391821.html

 

https://mp.weixin.qq.com/debug/wxadoc/dev/index.html

 

http://www.hishop.com.cn/xiaocx/show_36784.html

 

https://yq.aliyun.com/articles/47357