安装使用

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. 常用命令

  1. start nginx // 启动nginx
  2. nginx -s stop // 快速停止nginx,可能并不保存相关信息
  3. nginx -s quit // 有序的停止nginx,并保存相关信息
  4. nginx -s reload // 重新载入配置,修改完配置文件后使用此命令重启

原理简析

在说明使用nginx的优点之前,先说说另一种常用的调试方案:修改hosts文件。
修改host的原理是:对主机添加特定dns解析规则,将指定域名解析至某个特定ip。例如:

在hosts文件里写了这么一行:127.0.0.1 example.com,接下来在浏览器输入www.example.com后:

  1. 主机检测hosts文件发现有对应规则(如果没有对应规则就走正常dns解析服务),于是向IP127.0.0.1:80(默认端口)发送http请求,请求报文上GET / HTTP/1.1,host:example.com
  2. 如果此时本地80端口确实启动了某个服务,则处理该对应的请求。

如果我们正好是在本地的80端口运行这个要调试项目,那自然没有问题。但是可能有意外情况:

  1. 本地项目不跑在80端口
  2. 要监听的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时,运行的正是我们的实际项目

整个过程至此结束


惯例:如果内容有错误的地方欢迎指出(觉得看着不理解不舒服想吐槽也完全没问题);如果有帮助,欢迎点赞和收藏,转载请征得同意后著明出处,如果有问题也欢迎私信交流,主页有邮箱地址

windows下使用nginx调试简介相关推荐

  1. Windows下搭建PHP调试环境(phpstudy+VScode)

    Windows下搭建PHP调试环境(phpstudy+VScode) 0x00 问题背景 0x01 配套环境 0x02 php Xdebug简介 官方介绍: Xdebug扩展启用 0x03 php.i ...

  2. windows下使用Nginx服务器实现负载均衡方法

    windows下使用Nginx服务器实现负载均衡方法 安装与基本配置 首先下载windows的版本Nginx服务器 下载地址如下: http://www.nginx.org/download/ngin ...

  3. php7 fastcgi安装,安装windows 下 php7+nginx+fastcgi

    安装windows 下 php7+nginx+fastcgi php环境安装很多次了,这次还是整了半天,记录下后面好少走弯路. 开始 先下载东西? php7 : http://windows.php. ...

  4. openstack windows下远程debug调试(komodo)

    2019独角兽企业重金招聘Python工程师标准>>> 感谢朋友支持本博客,欢迎共同探讨交流,由于能力和时间有限,错误之处在所难免,欢迎指正! 如有转载,请保留源作者博客信息. Be ...

  5. Windows下配置nginx+php(wnmp)

    Windows下配置nginx+php(wnmp) 第一部分:准备工作.(系统:Windows 8.1) 1.首先是下载软件. NGINX-1.3.8官网下载:http://nginx.org/en/ ...

  6. 【转载】【VSCode】Windows下VSCode编译调试c/c++

    转载自:http://blog.csdn.net/c_duoduo/article/details/51615381 懒得自己配置或自己配置出现不明问题的朋友可以点这里:  [VSCode]Windo ...

  7. php yaf.dll,windows下配置nginx+php+yaf的环境

    搭建Nginx + PHP + Yaf 环境的步骤 1.首先下载配置环境所需的应用程序包(附图). 1)Nginx:nginx news (进入选择版本,这里以Stable version中的ngin ...

  8. windows下配置nginx+php环境

    刚看到nginx这个词,我很好奇它的读法(engine x),我的直译是"引擎x",一般引"擎代"表了性能,而"x"大多出现是表示" ...

  9. Windows下配置Nginx使之支持PHP(转)

    平台描述:Windows下,使用PHP套件 xampp,因为是测试玩,所以没在服务器 Linux 环境中配置. 1. 首先,将 nginx.conf 中的 PHP 配置注释去掉. 01 # pass ...

最新文章

  1. 2021年最有用的数据清洗 Python 库
  2. 漫谈云计算、虚拟化、容器化--云平台技术栈05
  3. [转载] 七龙珠第一部——第110话 加油 孙悟空
  4. 算法分析-分治 归并排序,递归插入排序,二分查找
  5. php中的getdate+函数,PHP中的getdate()函数
  6. 前端学习(2741):重读vue电商网站51之首页内容定制
  7. 聊聊Code Review
  8. 智能DNS+双线机房
  9. 古老的版本管理器---P4客户端配置流程,操作总结
  10. AE一键去黑底的插件UnMult
  11. docker login Error response from daemon: Get http://ip:port/v2/: net/http: request canceled
  12. 利用遗传算法求解车辆路径问题
  13. 批量删除QQ空间说说
  14. 【全网唯一】TC8一致性测试文章合集来袭(持续更新中)
  15. python无法调用urlopen_python urlopen 不了一个url 而用curl 是可以的
  16. 百度地图API 自定义标注图标
  17. 云豹智能发布全功能云霄DPU网卡,引领数据中心新趋势
  18. 在 Laravel 中使用 Tailwind CSS
  19. 0039c语言作业答案2020,中石油华东2020年秋季学期《程序设计(C语言)在线考试题目答案...
  20. 想拥有一个自由时间的职业_如何以自由职业者的身份管理时间

热门文章

  1. 疯狂游戏型计算机配置清单,电脑配置清单
  2. 内连接(INNER JOIN)
  3. 工业仪器仪表 界面设计_如何设计时尚的仪表板界面
  4. 一文彻底搞懂前端监控 等推荐
  5. linux下ssh通过公钥登录服务器
  6. 缓冲运动之框架開始一级简单框架实例
  7. nginx安装及负载均衡配置
  8. epoll socket 服务端中read和write的返回值讨论
  9. 函数式编程工具:filter和reduce
  10. Java探索之旅(6)——对象和类