1、下载Nginx,启动Nginx服务

Nginx官网:http://nginx.org

http://nginx.org/download/nginx-1.17.3.zip

本教程选择1.17.3

将下载好的文件解压出来修改文件名为 nginx ,然后拷贝到C盘下,目录如下:C:\nginx

Nginx启动方式有两种如下

双击启动

cmd命令启动

1.1双击启动

直接双击nginx.exe,双击后一个黑色的弹窗一闪而过。

image.png

cmd命令启动

用 管理员权限 打开cmd,切换到nginx解压目录下,输入命令 start nginx.exe 或者 nginx.exe ,回车后会出现一个黑色的弹窗一闪而过。

C:\Users\Administrator>cd \
C:\>cd nginx
C:\nginx>start nginx.exe

验证Nginx是否正常启动

访问 http://localhost/

image.png

PS :想要设置开机自启Nginx可以参考https://www.ahaoyw.com/article/299.html 

2.安装 OpenSSL

下载OpenSSL http://slproweb.com/products/Win32OpenSSL.html  官网地址

根据你的操作系统选择

官网下载地址http://slproweb.com/download/Win64OpenSSL_Light-1_1_1c.exe

自己的下载源

http://mirrors.ahaoyw.com/autoconf/win/Nginx/Win64OpenSSL_Light-1_1_1c.exe

记得要安装VC库   http://mirrors.ahaoyw.com/autoconf/win/PHP/php70/vc2014.rar

下载完成安装到 C:\OpenSSL-Win64

配置环境变量

在path变量后需要加入;C:\OpenSSL-Win64\bin

image.png

加入系统变量要重启系统才会生效

临时的我们可以使用C:\OpenSSL-Win64\bin 到这个目录去生成证书

3.生成https证书

在C:\nginx下创建ssl文件夹 用于存放证书

打开Cmd窗口

# cd C:\nginx\ssl  //进入ssl目录

创建私钥 (建议使用系统窗口)

openssl genrsa -des3 -out ahao.key 1024 //ahao为自定义名字

image.png

输入密码后回车会让你在确认下你刚才输入的密码,再次回车

image.png

创建 csr 证书

openssl req -new -key ahao.key -out ahao.csr

image.png

最终效果

image.png

删除密码 复制 ahao.key 并重命名 ahao.key.org

openssl rsa -in ahao.key.org -out ahao.key

image.png

生成crt证书

openssl x509 -req -days 365 -in ahao.csr -signkey ahao.key -out ahao.crt

image.png

最终生成的证书如下

image.png

4.修改 nginx 下的 nginx.conf配置文件

进入C:\nginx\conf 目录

修改如下

 #server {
    #    listen       443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}
    修改成
    server {
     listen       443 ssl;
     server_name  localhost;
     # 这个是证书的crt文件所在目录
     ssl_certificate      C:/nginx/ssl/ahao.crt;
     # 这个是证书key文件所在目录
     ssl_certificate_key  C:/nginx/ssl/ahao.key;
     ssl_session_cache    shared:SSL:1m;
     ssl_session_timeout  5m;
     ssl_ciphers  HIGH:!aNULL:!MD5;
     ssl_prefer_server_ciphers  on;
     location / {
            root   html;
            index  index.html index.htm;
        }
    }

image.png

重启nginx

结束进程重启服务或者CMD窗口进入到Nginx安装目录输入nginx.exe -s reload   ## 重新加载 配置文件

因为证书是自制的不被浏览器识别所以会提示风险  ,如果证书的网站可以去申请个免费的证书

image.png