一、基于域名的虚拟服务器

nginx首先确定使用哪一个server域来处理请求,下面的例子中有3个虚拟服务器监听*:80端口。

server {
listen 80;
server_name nginx.org www.nginx.org;
...
}
server {
listen 80;
server_name nginx.net www.nginx.net;
...
}
server {
listen 80;
server_name nginx.com www.nginx.com;
...

}

在上面的配置中,nignx会根据HTTP请求“Host”的值,确定具体哪一个server接收web请求。如果“Host”不存在或者Host的值无法匹配任何sever中的$server_name,nginx就会把web请求送到默认的server中。如果没有定义default_server,默认将 请求传递给第一个server。

默认server的配置方法如下:

server {
    listen       80  default_server;
    server_name  nginx.net  www.nginx.net;
    ...

}

二、处理基于IP和域名的虚拟主机

server {
    listen       192.168.1.1:80;
    server_name  nginx.org  www.nginx.org;
    ...
}
server {
    listen       192.168.1.1:80;
    server_name  nginx.net  www.nginx.net;
    ...
}
server {
    listen       192.168.1.2:80;
    server_name  nginx.com  www.nginx.com;
    ...
}

上面的配置中,nginx首先匹配IP地址和端口,然后在确定响应IP下的server_name,如果没有找到任何匹配的 server_name,ngixn将请求传递给默认server。例如,当nginx收到来自 192.168.1.1:80 端口的请求www.nginx.com(无法匹配192.168.1.1下的任何一个server_name),上例中没有定义默server,那么这个请求将被传递到第一个server中。

默认server的配置方法如下:

备注:nginx可以为不同的IP地址和端口定义多个默认server

eg:

server {
    listen        192.168.1.1:80;
    server_name   nginx.org  www.nginx.org;
    ...
}
server {
    listen        192.168.1.1:80  default_server;
    server_name   nginx.net  www.nginx.net;
    ...
}
server {
    listen        192.168.1.2:80  default_server;
    server_name   nginx.com  www.nginx.com;
    ...

}

三、如何处理PHP请求

待补充。。。。。


转载于:https://blog.51cto.com/tenderrain/1610734

nginx处理web请求分析相关推荐

  1. 用Go重构WEB请求分析跟踪服务

    在Skroutz,我们严重依赖网页分析来进行关键业务和技术决策. 从网页浏览收集的数据可以用于计算商店产品转换率,提取商业智能,制定个性化建议和预测的原材料. 随着访问流量在过去几年中稳步增长,我们面 ...

  2. Day083 web请求生命周期分析

    一.web请求生命周期分析 1.概述 ​ web请求是基于http协议的,而http协议是基于请求/响应的模式,即一个请求对应一个响应,那么一个web请求(或者说http请求)的生命周期就是指从发起一 ...

  3. windows nginx c++读取请求数据_震撼!全网第一张源码分析全景图揭秘Nginx

    不管是C/C++技术栈,还是PHP,Java技术栈,从事后端开发的朋友对nginx一定不会陌生. 想要深入学习nginx,阅读源码一定是非常重要的一环,但nginx源码量毕竟还是不算少,一不小心就容易 ...

  4. nginx 关闭access日志_可视化实时Web日志分析工具,堪称神器!

    说到web服务器就不得不说Nginx,目前已成为企业建站的首选.但由于种种历史原因,Nginx日志分析工具相较于传统的apache.lighthttp等还是少很多. 今天就和大家分享一个非常强大的实时 ...

  5. 海量Web日志分析 用Hadoop提取KPI统计指标

    海量Web日志分析 用Hadoop提取KPI统计指标 Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahou ...

  6. nginx高性能WEB服务器系列之九--nginx运维故障日常解决方案

    nginx系列友情链接: nginx高性能WEB服务器系列之一简介及安装 https://www.cnblogs.com/maxtgood/p/9597596.html nginx高性能WEB服务器系 ...

  7. 一个完整的 Web 请求到底发生了什么

    阅读本文大概需要 7 分钟. 一.从输入一个网址开始 当我们在浏览器输入一个网址,然后按下回车,接下来浏览器显示了页面.网速好的话这之间可能就一秒,但在这一秒内到底发生了什么? 本文主要内容是试图记录 ...

  8. nginx高性能WEB服务器系列之七--nginx反向代理

    nginx系列友情链接: nginx高性能WEB服务器系列之一简介及安装 https://www.cnblogs.com/maxtgood/p/9597596.html nginx高性能WEB服务器系 ...

  9. 集群(三)——haproxy+nginx搭建web集群

    集群(三)--haproxy+nginx搭建web集群 一.Haproxy 前言 二.Haproxy 简介 1.常见的web集群调度器 2.Haproxy应用分析 3.Haproxy高性能负载均衡的主 ...

最新文章

  1. foreach遍历进阶_“枚举器“/GetEnumerator()方法
  2. 鼠标坏了你别扔,可以修的
  3. Android进阶笔记09:Android 万能适配器
  4. 中国计算机学会CCF推荐国际学术会议和期刊目录-人机交互与普适计算
  5. pond and pool
  6. 聊聊 Java 的几把 JVM 级锁
  7. 页面加载速度-合并资源文件
  8. Android Ubuntu 安装问题FAQ
  9. 【Python】我的第一个EXE程序
  10. C++编程实现单链表的逆置
  11. Flash写操作流程
  12. MATLAB生成数组
  13. js || 和 的高级运用
  14. 红魔5S游戏手机与努比亚watch闪耀ChinaJoy
  15. ABP-Hangfire定时任务
  16. 王峰五小时对话冯波:如果今天没有区块链,你会做什么?
  17. Backtrader概念(四)-Cerebro参数
  18. 魔兽RPG地图破解及修改方法
  19. Intellij IDEA使用技巧
  20. 一个让我感到 细思极恐 的开源项目!

热门文章

  1. 【CF464E】The Classic Problem(主席树+最短路)
  2. 程序员50题(JS版本)(九)
  3. Linux平台安装MongoDB
  4. 微信公众平台开发 微信JSSDK开发
  5. 使用MyEclipse创建可执行jar
  6. MVC4做网站后台:模块管理1、修改模块信息
  7. 谷歌宣布推出Dart编程新语言
  8. 利用XML配置实体列表
  9. anaconda 设置python3为主_关于在Windows、Linux和Mac上安装设置Python的问题
  10. 可微偏导数一定存在_【导数压轴题】“偏导数”与含参不等式