1、先去腾讯官网申请一个免费的证书,下载下来传到服务器端
2、找到nginx配置文件,加入一下配置下 【http内】
server {
listen 443; # 默认端口443
server_name www.94phper.com; # 自己的域名
root /var/www/html/https; # 访问的路径
ssl on; # 开启ssl证书访问
ssl_certificate ../crt/1_94phper.com_bundle.crt; #
ssl_certificate_key ../crt/2_94phper.com.key;
ssl_session_timeout 10m; # session有效期10分钟
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 / {
index index.html index.htm; # 默认访问文件
}
}
3、重启nginx
如果提示这个:nginx: [emerg] unknown directive "ssl" in /usr/local/nginx/conf/nginx.conf:
到解压的nginx目录下
./configure --with-http_ssl_module
当执行上面语句,出现./configure: error: SSL modules require the OpenSSL library.
用 yum -y install openssl openssl-devel
再执行./configure
重新执行./configure --with-http_ssl_module
make ,切记不能make install 会覆盖。
把原来nginx备份
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
把新的nginx覆盖旧的
mv objs/nginx /usr/local/nginx/sbin/nginx
#重启nginx
4、客户端测试服务端443端口是否开启
LiKang:~ likang$ telnet 45.40.**.** 443
Trying 45.40..**.**...
Connected to 45.40..**.**.
Escape character is '^]'.
^CConnection closed by foreign host
# 出现这个就可以
5、浏览器输入https+域名就可以了
出现问题之后,可能是防火墙的问题:
建议关闭防火墙,并且清空防火墙策略
systemctl iptables stop
iptables -F