返回> 网站首页
nginx支持https
yoours2022-09-28 20:07:21
简介一边听听音乐,一边写写文章。
一、安装OpenSSL
下载地址:http://slproweb.com/products/Win32OpenSSL.html
二、安装nginx
下载地址:http://nginx.org/en/download.html
三、查看nginx是否安装 http_ssl_module 模块
nginx -V
四、创建SSL证书
1. 创建私钥
openssl genrsa -des3 -out localhost_ssl.key 1024 # localhost_ssl文件名是自己随便起即可
2. 创建csr证书
openssl req -new -key localhost_ssl.key -out localhost_ssl.csr #其中key文件为刚才生成的文件。
执行上述命令后,需要输入一系列的信息。输入的信息中最重要的为Common Name,这里输入的域名即为我们要使用https访问的域名。
3. 去除密码。
在加载SSL支持的Nginx并使用上述私钥时除去必须的口令,否则会在启动nginx的时候需要输入密码。
openssl rsa -in localhost.key -out localhost_ssl.key
然后输入密码,这个密码就是上文中在创建私钥的时候输入的密码。
4. 生成crt证书
openssl x509 -req -days 365 -in localhost_ssl.csr -signkey localhost.key -out localhost.crt
五、nginx配置
http {
server {
listen 8866 ssl; # ssl端口,自定义
server_name localhost;
ssl_certificate D://_Temp//nginx-1.22.0//ssl//localhost.crt; # 这个是证书的crt文件所在目录
ssl_certificate_key D://_Temp//nginx-1.22.0//ssl//localhost.key; # 这个是证书key文件所在目录
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
#ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_prefer_server_ciphers on;
#将请求转成https
#rewrite ^(.*)$ https://$host$1 permanent;
location / {
proxy_pass https://www.baidu.com:443;
}
}
}