1、安装证书工具
使用证书生成工具生成证书,如OpenSSL
在http://slproweb.com/products/Win32OpenSSL.html
上下载对应版本的程序,
2、 配置证书
2.1、配置密码
cmd到nginx的conf目录下,输入命令,会提示输入密码(可以将openssl执行程序配置到环境变量中)
openssl genrsa -des3 -out demo.key 1024
2.2、创建csr证书
(这里主要设置的是国家地区以及组织名称等信息,最重要的是Common Name,这里输入的就是我们要用https访问的域名。)
openssl req -new -key demo.key -out demo.csr
2.3、去除密码
在加载SSL支持的Nginx并使用上述私钥时除去必须的口令,否则会在启动nginx的时候需要输入密码。
复制demo.key并重命名为demo.key.org。在命令行中执行此命令:
openssl rsa -in demo.key -out demo.key.org
2.4、生成crt证书
在命令行中执行此命令:
openssl x509 -req -days 365 -in demo.csr -signkey demo.key -out demo.crt
3、配置nginx
server {
listen 80;
listen 443 ssl;
server_name xxx.xxx.cn localhost; #证书绑定的域名。
charset utf-8;
ssl_certificate demo.crt;
ssl_certificate_key demo.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
#表示使用的加密套件的类型。
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; #表示使用的TLS协议的类型。
ssl_prefer_server_ciphers on;
# 请求页面
location / {
root html;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
}
4、刷新nginx配置即可
$nginx -s reload
在浏览器访问https://localhost:443
或者http://localhost:80