本文分享阿里云服务器如何配置支持https。
环境
阿里云服务器centos 7.2
web服务器 nginx 1.2
准备工作
1、申请证书
阿里云的证书是可以免费申请的,到阿里云控制台的安全(云盾)-CA证书服务模块申请。申请完证书之后可以观看阿里云的帮助视频了解如何使用证书
2、安装openssl
nginx安装的时候如果未编译openssl需要安装openssl (默认是未编译的)
如果在配置nginx时报错unknown directive “ssl_certificate” in /usr/local/nginx/conf/nginx.conf 那么就需要安装openssl模块了。
yum install openssl
yum install openssl-devel
配置
1、将证书文件拖到服务器的指定目录下,然后再nginx的conf配置文件中打开https的配置
server {
server_name localhost;
listen 443;
ssl on;
ssl_certificate //你服务器的那个pem文件的路径
ssl_certificate_key //你服务器的那个key文件的路径;
}
2、重启nginx服务器
若出现unknown directive “ssl_certificate” in /usr/local/nginx/conf/nginx.conf
则说明nginx未编译openssl模块
使用如下命令:
./configure --with-http_stub_status_module --with-http_ssl_module --with-openssl=<openssl dir>
特别注意的是openssl dir是源代码的路径而不是安装路径。
执行上述命令后重启如还未解决问题时,需要手动下载openssl的包到服务器。
wget -c http://www.openssl.org/source/openssl-1.0.0e.tar.gz
tar -xzf openssl-openssl-1.0.0e.tar.gz
openssl
OpenSSL> version -a
观察是否打印正确的版本信息。如不正确则需要改下环境变量。具体方法可百度。
然后
./configure --with-http_stub_status_module --with-http_ssl_module --with-openssl=<openssl dir>
openssl dir指定到刚解压的openssl目录
在nginx解压目录下执行 make等待编译完成重启nginx。基本上nginx便启动成功了。那么就可以使用https访问我们的服务器了。如果未能正常访问,请查看防火墙状态,查看443端口是否处于监听状态。