一、下载 Windows 版本的 nginx
nnginx下载:
推荐稳定版本。下载完成后,解压得到 nginx-1.14.0 ,我把它放到C盘目录下。
二、将 nginx 设置为windows服务
从nginx官网下载的nginx是绿色版本的,双击执行程序才能开启监听工作。我们借助 “Windows Service Wrapper” 小工具,把 nginx 做成 windows服务,这样能更方便我们以后的维护和配置工作。
Windows Service Wrapper 下载地址:
下载完成后,
- 将其放在nginx的根目录下,我这里的路径是 C:\nginx-1.14.0 ,把下载得到的文件放到这个路径下
- 将其重命名为nginx-service.exe
- 创建配置文件。新建一个记事本,将文件名改为 nginx-service ,txt 后缀改为 xml,即完整文件名为 nginx-service.xml (注意,配置文件名要和2中的nginx-service一致)
- 创建nginx-service.exe.config(为支持NET 4.0 Runtime,默认只支持 NET 2.0 Runtime)
操作完成后,文件结构如下:
- 配置nginx-service.xml
用记事本或其他编译器打开 nginx-service.xml 文件,输入以下内容并保存(C:\nginx-1.14.0 为 nginx 的根目录,请根据实际情况更改):
nginx Nginx Service High Performance Nginx Service C:\nginx-1.14.0\logs 10240 8 C:\nginx-1.14.0\nginx.exe -p C:\nginx-1.14.0 C:\nginx-1.14.0\nginx.exe -p C:\nginx-1.14.0 -s stop
- 配置nginx-service.exe.config文件,输入以下内容并保存:
- 安装nginx服务
进入nginx根目录,我这里是 C:\nginx-1.14.0,按住 shift 键,右击空白处,选择 “在此处打开命令窗口”
通过dos命令安装nginx服务,输入 nginx-service.exe install (卸载服务:nginx-service.exe uninstall)
安装完成后,即可在windows服务里找到 nginx-service 的服务
三、配置反向代理
nginx配置文件路径,根目录/conf/nginx.conf,我这里是 C:\nginx-1.14.0\conf\nginx.conf,在修改之前,我们先将原始文件备份一份,复制拷贝nginx.conf,更名在nginx.conf.bak
- http反向代理
server { listen 80; server_name www.test1.com; #输入你的域名 location / { #root html; #index index.html index.htm; proxy_pass http://192.168.90.99:8080; #源服务器地址 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } access_log logs/www.test1.com.log; #访问日志路径,将www.test1.com更改为你的域名,提高辨识度。 }
- https反向代理
server { listen 443 ssl; server_name www.test2.com; #输入你的域名 ssl_certificate C:\ssl\1_www.test2.com.crt; #证书路径,支持 crt,pem 类型的证书,不支持 pfx 类型的证书 ssl_certificate_key C:\ssl\2_www.test2.com.key; #证书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; proxy_pass http://192.168.90.99:99; proxy_set_header Host $host; proxy_redirect http:// $scheme://; #做https跳转 proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } access_log logs/www.test2.com.log; #访问日志路径,将www.test2.com更改为你的域名,提高辨识度。
}
tips1:更改 nginx 配置文件后,需重启 nginx 服务才能生效;
tips2:配置https反向代理服务器,证书只需在反向代理服务器配置,源服务器配置常规 http 访问即可。
安装nginx并创建windows服务参考文档: