Nginx 安装HTTPS证书

由于购买的是腾讯云服务器,可以申请免费证书。腾讯云Nginx安装证书过程,过程比较简单。

(1)将申请的证书 1_www.domain.com_bundle.crt 证书文件和 2_www.domain.com.key
放在 /usr/local/nginx/conf ,即放在自己nginx安装目录下的conf目录里面
(2) 修改nginx.conf文件
server {
     #SSL 访问端口号为 443
     listen 443 ssl; 
     #填写绑定证书的域名
     server_name www.domain.com; 
     #证书文件名称
     ssl_certificate 1_www.domain.com_bundle.crt; 
     #私钥文件名称
     ssl_certificate_key 2_www.domain.com.key; 
     ssl_session_timeout 5m;
     #请按照以下协议配置
     ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
     #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
     ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
     ssl_prefer_server_ciphers on;
     location / {
        #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
         root /var/www/www.domain.com; 
         index  index.html index.htm;
     }
 }

以上时腾讯云的文档,安装这个操作,满以为就此搞定,但是使用  /usr/local/nginx/sbin/nginx -t 命令检查配置文件的时候,报出了如下错误:

nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:46

网上查询原因,原来是nginx缺少https模块。那么就安装此模块呗:

我的安装nginx安装位置:

我的nginx的安装目录是/usr/local/nginx这个目录,

我的源码包在/usr/local/nginx/nginx-1.10.2目录

【1】先切换到nginx源码包目录

cd /usr/local/nginx//usr/local/nginx/nginx-1.10.2

[2]查看nginx原有的模快有哪些

/usr/local/nginx/sbin/nginx -V

在configure arguments:后面显示的原有的configure参数如下:

--prefix=/usr/local/nginx 

我的里面什么都没有。

【3】我只需要https模块,那么配置信息应该为:

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

【4】直接运行该命令,等配置完毕后,再次运行下面的make命令,注意不要make install ,不然就被覆盖安装了!

make

【5】然后备份下已经安装好的nginx,不怕一万就怕万一。

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

【6】然后将刚才安装好的nginx覆盖到原有的nginx(这个时候nginx应该是停止状态,如果停止不了,直接killall -9 nginx 吧),然后执行下面的命令,到这一步的时候,没有切换过目录,就怕有人去sbin里面停nginx,然后直接执行了下面的语句,然后不成功,bbb

cp ./objs/nginx /usr/local/nginx/sbin/

【7】然后检查模块是否加入成功了

/usr/local/nginx/sbin/nginx -V

Nginx 安装HTTPS证书_第1张图片

如果有http_ssl模块代表添加成功了,安装成功!

你可能感兴趣的:(Nginx)