首页   >   代码编程

nginx配置腾讯云ssl证书图文教程

从腾讯云上下载了一个ssl证书,跟阿里云还不大一样,阿里云是一个.pem和.key文件,而腾讯云则是一个.crt和.key文件,不过名字并不会影响最终的使用。

下载的是一个zip压缩包,解压之后,有很多种证书,nginx、apache、iis,还是挺全面的,本文使用nginx配套的证书。

nginx配置腾讯云ssl证书图文教程

上传crt证书至服务器

[root@VM_41_196_centos nginx]# cd cert
[root@VM_41_196_centos cert]# ll
total 8
-rw-r--r-- 1 root root 3701 Mar  5 13:47 1_www.jiweichengzhu.com_bundle.crt
-rw-r--r-- 1 root root 1678 Mar  5 13:47 2_www.jiweichengzhu.com.key
[root@VM_41_196_centos cert]# pwd
/usr/local/nginx/cert
[root@VM_41_196_centos cert]# 
[root@VM_41_196_centos cert]#

我上传到了nginx的安装目录/usr/local/nginx/cert/中,这个纯属个人喜好,放在服务器的哪里都可以。

配置conf文件,引入证书,开放443端口

server {
    listen 443 ssl;
    server_name www.jiweichengzhu.com;
    ssl on;
    ssl_certificate cert/1_www.jiweichengzhu.com_bundle.crt
    ssl_certificate_key cert/2_www.jiweichengzhu.com.key
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    location / {
        ...... 
    }
}

一启动,分分钟报错

[root@VM_41_196_centos objs]# ./nginx -s reload
nginx: [emerg] invalid number of arguments in "ssl_certificate" directive in /usr/local/nginx/conf/../conf.d/jwcz.conf:12

很清晰,第12行报错了,看了半天才发现,原来是少了分号。。。

server {
    listen 443 ssl;
    server_name www.jiweichengzhu.com;
    ssl on;
    ssl_certificate cert/1_www.jiweichengzhu.com_bundle.crt;
    ssl_certificate_key cert/2_www.jiweichengzhu.com.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    location / {
        ...... 
    }
}

一启动,再次报错

[root@VM_41_196_centos objs]# ./nginx -s reload
nginx: [emerg] BIO_new_file("/usr/local/nginx/conf/cert/1_www.jiweichengzhu.com_bundle.crt") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/usr/local/nginx/conf/cert/1_www.jiweichengzhu.com_bundle.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

也很明确,证书文件的路径写错了,少了一层

server {
    listen 443 ssl;
    server_name www.jiweichengzhu.com;
    ssl on;
    ssl_certificate ../cert/1_www.jiweichengzhu.com_bundle.crt;
    ssl_certificate_key ../cert/2_www.jiweichengzhu.com.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    location / {
        ...... 
    }
}

再次启动,总算是可以了,访问浏览器也会绿色的安全标记了!

配置完成之后,如果还是访问不了https,请检查云服务器的安全组是否开放了443端口

如果还不会在linux下安装nginx,请移步:linux环境下nginx1.13.6二进制方式安装教程

QQ群Ⅰ: 686430774 (已满)

QQ群Ⅱ: 718410762 (已满)

QQ群Ⅲ: 638620451 (已满)

QQ群Ⅳ: 474195684

如果文章有帮到你,可以考虑请博主喝杯咖啡!

分享到:

欢迎分享本文,转载请注明出处!

作者:不忘初心

发布时间:2019-03-05

永久地址:https://www.jiweichengzhu.com/article/cce86aacd95e4136a798aaea90288112

评论