美文网首页
阿里云 Nginx SSL配置(HTTPS)

阿里云 Nginx SSL配置(HTTPS)

作者: 一沭丶 | 来源:发表于2019-10-31 14:57 被阅读0次

一、阿里云服务器购买,需要添加对应的域名,假设为 mingtian.baofu.com

image.png

下载到本地解压有两个文件,如下图

image.png

二、连接远程服务器

找到目录 /usr/local/nginx/conf 创建 cert 目录,将两个文件复制进去

image.png

/usr/local/nginx/nginx.conf 文件中添加如下配置

 server {
       listen       443;
       server_name  mingtian.baofu.com; // 这里就是之前注册证书时的域名
       ssl on;
       root html;
       index index.html index.htm;

       ssl_certificate      cert/刚刚复制的文件名称.pem;
       ssl_certificate_key  cert/刚刚复制的文件名称.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 / {
           root   html;
           index  index.html index.htm;
       }
    }

更新到服务器,顺利的话,执行 nginx -t 不报错,再执行 nginx -s reload 重启就好了。

如果不顺利,则往下看。

三、解决问题

image.png

(1)执行如下代码:

./configure --with-http_ssl_module

十有八九报错如下:

 ./configure: error: SSL modules require the OpenSSL library.

(2)执行如下代码:

yum -y install openssl openssl-devel

./configure

./configure --with-http_ssl_module

make

make 执行后会生成一个 objs 文件夹

image.png

(3)将原来 nginx 备份,可以手动复制命名, 或者如下命令执行复制,这里文件目录自己对照一下

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

(4) 在 objs 目录下执行下面代码覆盖安装

cp objs/nginx /usr/local/nginx/sbin/nginx 
image.png
nginx -t
// 无报错则往下执行
nginx

然后就去访问页面,发现访问不通,此时需要在 阿里云服务器 安全组添加 443

image.png

然后就可以访问了,

但是二级域名假设我们指定了一个目录

image.png

然后发现上面访问的是 welcome to nginx。。。

所以还要再改一下

server {
        listen       80;
        server_name  mingtian.baofu.com;
        # ssl
        listen       443;
        ssl on;
        ssl_certificate      cert/刚刚复制的文件名称.pem;
        ssl_certificate_key  cert/刚刚复制的文件名称.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 / {
            root         /root/project/ss;
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

完事!!!

image.png

相关文章

网友评论

      本文标题:阿里云 Nginx SSL配置(HTTPS)

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