内容简介:nginx是一个反向代理服务器,在web开发调试中经常用到,写一个简单的使用说明和总结。点击在解压的目录下找到
安装使用
nginx是一个反向代理服务器,在web开发调试中经常用到,写一个简单的使用说明和总结。
1. 下载
点击 官网下载地址 下载对应版本的nginx并解压
2. 配置
在解压的目录下找到 conf/nginx.conf
文件
添加所需监听和代理的server
# 项目名称 server { listen 80; server_name example.com;//监听的host #charset koi8-r; #access_log logs/host.access.log main; location / { proxy_set_header host $host; proxy_pass http://127.0.0.1:8092; // 要代理的地址 } }
3. 常用命令
- start nginx // 启动nginx
- nginx -s stop // 快速停止nginx,可能并不保存相关信息
- nginx -s quit // 有序的停止nginx,并保存相关信息
- nginx -s reload // 重新载入配置,修改完配置文件后使用此命令重启
原理简析
在说明使用nginx的优点之前,先说说另一种常用的调试方案:修改 hosts
文件。
修改host的原理是:对主机添加特定dns解析规则,将指定域名解析至某个特定ip。例如:
在hosts文件里写了这么一行: 127.0.0.1 example.com
,接下来在浏览器输入 www.example.com
后:
- 主机检测hosts文件发现有对应规则(如果没有对应规则就走正常dns解析服务),于是向IP
127.0.0.1:80(默认端口)
发送http请求,请求报文上GET / HTTP/1.1
,host:example.com
。 - 如果此时本地80端口确实启动了某个服务,则处理该对应的请求。
如果我们正好是在本地的80端口运行这个要调试项目,那自然没有问题。但是可能有意外情况:
- 本地项目不跑在80端口
- 要监听的host项目不在80端口,例如一般线上正式环境的项目使用的是https协议,请求默认端口就是443,
此时就需要 nginx
来解决问题, nginx
的作用用一句话描述: 将发送至特定host的请求转发到指定的代理地址上 。
举一个实际的例子,首先在hosts添加一行 127.0.0.1 construct-courses.pre1.web.nd
后,可以在浏览器看到这样的请求:
首先看图上 Grnrral
部分的 remote address
字段,即前文的第一步骤完成,本地的80端口接收到一个http请求,host为 construct-courses.pre1.web.nd
。
接着在 nginx
的配置文件中增加:
server { listen 80; server_name construct-courses.pre1.web.nd; location / { proxy_set_header host $host; proxy_pass http://127.0.0.1:8092; } }
在conf中配置如上图代码并启动nginx后,nginx检查到 server_name construct-courses.pre1.web.nd
接收到了请求,根据匹配规则,将请求转发到指定的 proxy_pass 即 http://127.0.0.1:8092
上。至此,请求 example.com
实际变成了请求 http://127.0.0.1:8092
在本地8092端口启动实际项目,就可以发现在浏览器访问construct-courses.pre1.web.nd时,运行的正是我们的实际项目
整个过程至此结束
惯例:如果内容有错误的地方欢迎指出(觉得看着不理解不舒服想吐槽也完全没问题);如果有帮助,欢迎点赞和收藏,转载请征得同意后著明出处,如果有问题也欢迎私信交流,主页有邮箱地址
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- iOS常用调试方法:断点调试
- 断点调试和日志调试之间的平衡点:函数计算调试之 Python 篇
- .NET高级调试系列-Windbg调试入门篇
- VisualStudio 通过外部调试方法快速调试库代码
- GDB 调试 Mysql 实战(二)GDB 调试打印
- 使用gdb调试工具上手调试php和swoole源码
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Game Engine Architecture, Second Edition
Jason Gregory / A K Peters/CRC Press / 2014-8-15 / USD 69.95
A 2010 CHOICE outstanding academic title, this updated book covers the theory and practice of game engine software development. It explains practical concepts and techniques used by real game studios,......一起来看看 《Game Engine Architecture, Second Edition》 这本书的介绍吧!