任何由server开始的部分都被称作虚拟服务器部分。它描述的是一组根据server_name指令逻辑分割的资源,这些虚拟服务器响应Http请求,因此他们都包含在http部分之中。

一个虚拟服务器由listen和server_name指令组合定义,listen指令定一个IP地址/端口组合或者是UNIX域套接字路径。

listen address

listen address:port

listen port

listen unix:path

一 default_server

default_server参数如果存在,将导致服务器成为指定地址的默认服务器:端口对。如果所有的指令都没有default_server参数,那么第一个带有地址的服务器:端口对将是这一对的默认服务器。

二 backlog

在listen()调用中设置backlog参数,它限制等待连接队列的最大长度。默认情况下,在FreeBSD、DragonFly BSD和macOS上,backlog设置为- 1,在其他平台上设置为511。

三 rcvbuf 和 sndbuf

rcvbuf:设置监听套接字的接收缓冲区大小(SO_RCVBUF选项)。

sndbuf: 设置监听套接字的发送缓冲区大小(SO_RCVBUF选项)。

四 deferred

指示在Linux上使用延迟accept()()(tcp_deferred _accept套接字选项),仅支持Linux

五 ssl

表示这个端口接收https连接

六 so_keepalive

为TCP监听套接字配置keepalive

七 server_name

虚拟主机的域名,可以配置多个,比如

server_name www.a.com www.b.com

对于没有设置HOST头字段的请求将会匹配该Server来处理

另外server_name也接受通配符作为server_name

# 替代部分子域名

*.example.com

# 替代顶级子域名

www.example.*

还可以在域名加上~表示使用正则表达式

server_name ~^www\.example\.com$

server_naem ~www(\d+).example\.(com)$

对于一个特定的请求,确定哪些虚拟主机提供该请求的服务时,应该遵循下面的逻辑

# 匹配IP地址和listen指令指定的端口

# 将Host头字段作为一个字符串匹配server_name指令

# 将Host头字段与server_name指令值字符串开始部分做匹配

# 将Host头字段与server_name指令值字符串结尾部分做匹配

# 将Host头字段与server_name指令值进行正则匹配

# 如果所有Host头字段匹配失败,那么将会转向listen指令标记的default_server

# 如果所有的Host头匹配失败,而且没有default_server,那么将会转向第一个server的listen指令

Nginx之虚拟服务器配置相关推荐

  1. Nginx的虚拟主机配置

    Nginx的虚拟主机配置 虚拟主机 使用特殊的软硬件技术,把一台运行在因特网上的服务器主机,分成一台台虚拟的主机. 每一台虚拟主机,都可以是一个独立的网站,可以具有独立的域名,具有完整的Interne ...

  2. (3)nginx的虚拟主机配置

    1 进入nginx安装路径下的conf目录下,打开 nginx.conf,虚拟主机配置如下 Nginx配置段// 全局区 worker_processes 1; // 有1个工作的子进程,可以自行修改 ...

  3. php nginx 域名重定向,Nginx默认虚拟主机、用户认证、域名重定向

    Nginx默认虚拟主机定义默认虚拟主机配置文件,在http下面加入include vhost/*.conf 在/usr/local/nginx/conf/下创建目录 #mkdir vhost/ //创 ...

  4. ThinkPHP6项目基操(2.Nginx配置虚拟域名及简化访问路径)

    Nginx配置虚拟域名及隐藏public和index.php路径 一.phpStudy 创建网站 二.隐藏index.php 方法一:vhosts.conf 方法二:phpStudy面板配置伪静态 方 ...

  5. nginx虚拟目录支持PHP,nginx设置虚拟目录

    nginx建立虚拟目录的配置文件放在/etc/nginx/conf.d目录下.系统用的是CentOS6.3. 首先在nginx.conf中查找有没有: include /etc/nginx/conf. ...

  6. Nginx配置虚拟主机三种方式

    Nginx 配置虚拟主机,总共有三种方式,基于多IP,基于多端口,基于多域名,其中基于多域名是企业中最常用的一种方式,基于多端口的方式,主要用于本机配置项目. nginx参数详解 基于多IP的方式 [ ...

  7. nginx配置虚拟主机vhost

    需求 项目需要两个域名使用同一个服务器,配置多个项目文件. 所谓虚拟主机,是说通过几个不同的url地址,都能到达nginx环境,只不过针对不同的url,处理的逻辑不同.nginx支持虚拟主机,但是浏览 ...

  8. Linux下使用Nginx完成虚拟主机配置

    虚拟主机的概念 虚拟主机,就是把一台物理服务器划分成多个"虚拟"的服务器,每一个虚拟主机都可以有独立的域名和独立的目录 nginx虚拟主机的配置 nginx的虚拟主机就是通过ngi ...

  9. Nginx轮训tomcat服务器配置流程

    Nginx轮训tomcat服务器配置流程 服务器信息 Nginx 192.168.27.128 Tomcat 192.168.27.129 关闭防火墙 #关闭防火墙 systemctl stop fi ...

最新文章

  1. Android 控件布局常用属性
  2. linux 各系统防火墙操作
  3. 我对 OneData 数据中台体系架构的一些思考
  4. 快速集成二维码扫描,使用最新版本的zxing(2017.11.10抽取zxing代码)
  5. LaTeX使用小结2
  6. java lambda函数_Java中的Lambda函数
  7. 一生必看的 100 幅世界名画
  8. JUnit 5预期异常
  9. 无线网卡 VS 无线上网卡
  10. C语言程序设计摘抄笔记1
  11. Python语言的适用范围
  12. 谈谈小游戏加载优化及资源分配
  13. springboot实现pdf打印和预览
  14. 讯时MX51(fxs) 24口语音网关 连接Elastix服务器的配置
  15. R语言绘图-gganimate 让你的统计图动起来
  16. 3个APP海外推广方式,不走寻常路
  17. Windows7系统服务详解
  18. 12306 抢票 python + selenium + chrome (二) 基础准备的软件和材料
  19. 线性空间,度量空间,赋范空间,线性赋范空间,内积空间,巴拿赫空间以及希尔伯特空间、拓扑空间
  20. JavaScript 当前时间显示(js)

热门文章

  1. python word2vec 移植_真实资讯语料下的Word2Vec的迁移实践:Tag2Vec
  2. 微型计算机使用字符编码,微型计算机系统中普遍使用的字符编码是( )
  3. android ssl http,Android SSL HTTP请求使用自签名证书和CA
  4. linux定时器跑命令,linux下运行定时器(cron/centos/js脚本)
  5. linux go vendor目录,Go 包依赖管理工具 —— govendor
  6. xamarin.android 控件,将Android View作为自定义控件集成到Xamarin.Forms
  7. python装逼_能够让你装逼的10个Python小技巧
  8. 解决python调试模型时,多次重复加载数据集与模型,节约大量等待时间
  9. python使用joblib多进程执行for循环
  10. gensim使用FastText训练词向量