先决条件
想要流畅的配置 nginx 需要了解一下内容:
1、nginx 调用方式:
-
- 启动 (双击 exe、cmd start nginx 、cmd nginx)
- 使用 (powershell 调用需要 ./ )
- 停止退出(nginx -s stop ; nginx -s quit ; )有可能需要管理员权限,如果修改了配置请确保配置正确,否则执行无效。
- 重新加载配置(nginx -s reload)
- 校验配置(nginx -t 配置路径)
- 设置配置(nginx -c path) 默认 nginx.conf
2、logs/nginx.pid 文件存在说明 nginx 已成功启动,否则参见 logs/error.log 启动失败记录。(划重点)
3、server 解释
server { # 端口 listen 80; # 域名 server_name testdomain.com; # 日志位置 及 日志格式为 main(在http 里定义。) access_log logs/test-open.dbgo.log main; # location 等于 testdomain.com/ ,例 location / sign =testdomain.com/sign=http://localhost:8023/sign location / { # 代理的本地服务地址 proxy_pass http://localhost:8023; } }
server 可以有多个,server name + listen 唯一即可。
注意事项
1、域名只能使用特定端口(域名服务商限制、出入站规则(服务商后台、VM 设置))
2、域名绑定的 ip 一定是 nginx 应用所在 服务器。没有域名可以随便编一个修改 hosts 文件把乱编的指向 127.0.0.1 就行了,注意乱编的只能单机测试用。(有用的废话。。)
3、代理地址要能访问。
4、生产环境切换应用服务器计划步骤。
1、部署和生产环境相同应用到 服务器 B 上。
2、部署 nginx 并绑定测试域名。
3、使用测试域名查看是否能够正常访问。
4、绑定 正式域名。
5、域名服务商后台切换 正式域名绑定的 ip 地址,瞬间完成。
6、注意如果搞清楚生产环境的 WebApp 有没有收集客户端信息的程序,如果有注意配置转发的时候带上,比如 host 头。
nginx 配置文件并不难理解,不急躁、心思细腻点很快就可以理解了。