文章转发 windows下用nginx配置https服务器
感谢 ldsweely
详细的分享
文章目录
一、安装nginx
- 先到nginx官网下在nginx
- 将下载好的文件解压出来修改文件名为 nginx ,然后拷贝到C盘下,目录如下:
- 运行 nginx
start nginx
- 1
- 验证
在浏览器中输入 localhost 访问即可,如出现以下页面,即安装成功
二、安装 OpenSSL(创建证书)
-
下载完成安装到 C:\OpenSSL-Win64
配置环境变量
在path变量后需要加入 %OPENSSL_HOME%
三、生成https证书
- 在C:\nginx下创建ssl文件夹 用于存放证书
- 创建私钥 (建议使用系统窗口,不要用gitBash 有涉及到选择的地方,gitBash无法选择)
openssl genrsa -des3 -out shidian.key 1024 //shidian 自己取的名字
- 1
效果如下:
- 创建 csr 证书
openssl req -new -key shidian.key -out shidian.csr
- 1
此时效果:
- 删除密码
复制 shidian.key 并重命名 shidian.key.org
openssl rsa -in shidian.key.org -out shidian.key
- 1
- 生成crt证书
openssl x509 -req -days 365 -in shidian.csr -signkey shidian.key -out shidian.crt
- 1
最后生成证书如下
四、nginx 配置启动
- 修改 nginx 下的 nginx.conf配置文件,
C:\nginx\conf\nginx.conf
upstream nodejs__upstream2 {
server 127.0.0.1:8080; # 需要监听的端口名 我用的
keepalive 64;
}
server {
listen 443 ssl;
server_name dev.kt.looklook.cn; # 配置的https的域名
ssl_certificate C://nginx//ssl//shidian.crt; # 这个是证书的crt文件所在目录
ssl_certificate_key C://nginx//ssl//shidian.key; # 这个是证书key文件所在目录
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Connection "";
proxy_http_version 1.1;
proxy_pass http://nodejs__upstream2;
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 重启nginx
nginx -s reload
- 1
- 配置host文件
C:\Windows\System32\drivers\etc
路径下
127.0.0.1 dev.kt.looklook.cn #需要配置的域名
- 1
- 访问
输入你配置好的域名即可访问了