一、安装配置
1、官网http://nginx.org/en/download.html下载windows版nginx,下个稳定版就行
Mainline version: 相当于开发版
Stable version: 稳定版
Legacy versions: 稳定版的旧版本
2、启动
将安装包解压到某个目录
双击nginx.exe启动nginx,浏览器打开http://localhost/检查nginx是否正常启动,默认监听的是80端口,如无法启动则可能80端口被占用,需要关闭占用80端口的进程或者更改监听端口,具体步骤在下一步
4、配置文件
nginx配置文件在其安装目录下的conf/nginx.conf,如果启动nginx时80端口被占用,可以关闭目前占用80端口的进程或者更改nginx监听的端口:
方法一:关闭占用端口的进程
1、cmd中输入 netstat -ano | findstr 端口号
2、根据查询到的进程id,输入 tasklist | findstr 进程id
3、输入 taskkill /f /t /im 进程名称
示例:关闭占用8081端口的进程:
方法二:更改nginx的监听端口
如下图所示,更改监听端口即可
我在更改监听端口并重启nginx后在浏览器访问发现原来的端口还能访问到nginx的页面,这是浏览器的缓存导致的,刷新一下就无法访问了。
nginx.conf更改后,切换到nginx安装目录通过 nginx -s reload 重新加载配置文件(ps: 关闭命令:nginx -s quit,启动命令:start nginx)
初次安装完使用命令可能会出现下面这个错误:nginx: [error] OpenEvent("Global\ngx_reload_52660)failed (5:access is denied),但重启nginx后就没有这个问题了,解决方法:直接重启电脑或者如果不想重启,以管理员模式打开cmd就能正常使用命令。
二、配置反向代理
简单配置:
这样配置后访问http://localhost就会跳转到http://localhost:8081,location / 表示在访问根目录时会跳转到server1指定的服务器
解决需求的nginx配置:在回调访问 http://www.xxx.com/chrome-extension/xxx... 时转发到http://www.xxx.com:8080/chrome-extension/xxx...
upstream extension {
server www.xxx.com:8080;
}
server {
listen 80;
server_name www.xxx.com;
location /chrome-extension {
proxy_pass http://extension;
}
}
ps: 如果想要在跳转后去掉路径/chrome-extension,即访问 http://www.xxx.com/chrome-extension/xxx... 时转发到http://www.xxx.com:8080/xxx...,可这样配置,其他部分与上面配置一致,只需增加一个/。
下一步准备在Linux上安装nginx,并将配置迁移过去。nginx的其他配置还需要继续学习。