1、去阿里云下载免费的ssl证书(申请成功如下图)
2、下载nginx版本的证书;
3、下载安装nginx,进入nginx目录执行以下操作(安装ssl环境):
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
4、执行make
5、执行make install
6、把下载好的证书a.pem和a.key放到nginx的conf目录下;(我这里用a重命名的)
7、配置nginx.config
upstream front {
server 服务器地址IP:服务端口;
}
server {
listen 80;
server_name 域名;
return 301 https://$server_name$request_uri;
}
server {
listen 443;
server_name localhost; # localhost修改为您证书绑定的域名。
ssl on; #设置为on启用SSL功能。
root html;
index index.html index.htm;
ssl_certificate cert/a.pem; #将domain name.pem替换成您证书的文件名。
ssl_certificate_key cert/a.key; #将domain name.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 / {
proxy_pass http://front;
}
}
8、启动nginx:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
报错:nginx: [emerg] open() "/usr/local/nginx/logs/access.log" failed (21: Is a directory)
解决:看了好多博客说是nginx.conf没有操作权限,我也设置权限了,但是启动还是报这个错误。
实际解决:nginx目录下没有logs文件夹,创建logs文件夹,启动即可。