server:http核心模块
语法:server {...}
默认值:no
使用字段:http
server字段包含虚拟主机的配置。
没有明确的机制来分开基于域名(请求中的主机头)和基于IP的虚拟主机。
可以通过listen指令来指定必须连接到这个server块的所有地址和端口,并且在server_name指令中可以指定所有的域名。
server_name:http核心模块
语法:server_name name [... ]
默认值:server_name hostname
使用字段:server
这个指令有两个作用:
·将HTTP请求的主机头与在nginx配置文件中的server{...}字段中指定的参数进行匹配,并且找出第一个匹配结果。这就是如何定义虚拟主机的方法,域名遵循下述优先级规则:
1、完整匹配的名称。
2、名称开始于一个文件通配符:*.example.com。
3、名称结束于一个文件通配符:www.example.*。
4、使用正则表达式的名称。
(略过没有匹配到的情况)
listen:http核心模块
语法(0.7.x):listen address:port [ default [ backlog=num | rcvbuf=size | sndbuf=size | accept_filter=filter | deferred | bind | ssl ] ]
语法(0.8.x):listen address:port [ default_server [ backlog=num | rcvbuf=size | sndbuf=size | accept_filter=filter | deferred | bind | ssl ] ]
默认值:listen 80
使用字段:server
listen指令指定了server{...}字段中可以被访问到的ip地址及端口号,可以只指定一个ip,一个端口,或者一个可解析的服务器名。
如果只有ip地址指定,则默认端口为80。
如果指令有default参数,那么这个server块将是通过“地址:端口”来进行访问的默认服务器,这对于你想为那些不匹配server_name指令中的主机名指定默认server块的虚拟主机(基于域名)非常有用,如果没有指令带有default参数,那么默认服务器将使用第一个server块。
listen允许一些不同的参数,即系统调用listen(2)和bind(2)中指定的参数,这些参数必须用在default参数之后:
backlog=num -- 指定调用listen(2)时backlog的值,默认为-1。
rcvbuf=size -- 为正在监听的端口指定SO_RCVBUF。
sndbuf=size -- 为正在监听的端口指定SO_SNDBUF。
accept_filter=filter -- 指定accept-filter。
index:默认主页设置模块
语法:index file-path [file-path [ ... ] ];
默认值:no
使用字段:server, location
root:http核心模块
语法:root path
默认值:root html
使用字段:http, server, location ,location中的if字段
请求到达后的文件根目录,可以是相对路径,也可以是绝对路径。
charset:字符集设置模块
语法:charset encoding|off
默认值:charset off
使用字段:http, server, location, location中的if字段
这个指令使应答头中的"Content-Type"字段使用指定的编码集,如果这个字符集与source_charset指令设置的字符集不相同,将重新编码字符集,参数off表明不在应答头中添加"Content-Type"信息。
access_log:日志模块
语法:access_log path [format [buffer=size | off]]
默认值:access_log log/access.log combined
使用字段:http, server, location
参数为连接日志指定了路径,格式和缓冲区大小。使用“off”将在当前的字段中清除access_log的所有参数,如果没有指定日志格式,默认为“combined”。缓冲区大小不能超过写入磁盘文件的最小大小。
日志文件路径可以包含变量(0.7.4以上版本),但是有一些限制:
1)nginx指定的用户必须有创建日志文件的权限。
2)缓冲区不会工作
3)每个到来的连接,日志文件将被打开并且在记录日志后迅速关闭,然而,频繁使用的文件描述符将被保存到open_log_file_cache中,关于日志的轮询记录,必须记住随着时间的过去(使用open_log_file_cache的valid参数设置),日志仍然在旧的文件中记录。
open_log_file_cache:日志模块
语法:open_log_file_cache max=N [inactive=time] [min_uses=N] [valid=time] | off
默认值:open_log_file_cache off
使用字段:http server location
这个指令为频繁使用的日志文件描述符所在的路径变量设置缓存。
指令选项:
·max - 缓存中存储的最大文件描述符数。
·inactive - 设置缓存中在某个时间段内没有使用的文件描述符将被移除,默认为10秒。
·min_uses - 在一定时间内(inactive指定),一个文件描述符最少使用多少次后被放入缓存,默认为1。
·valid - 设置检查同名文件存在的时间,默认是60秒。
·off - 关闭缓存。
相关推荐
计算机后端-PHP视频教程. Nginx-0105 server段配置虚拟主机_布尔教育.wmv
在nginx下配置虚拟主机vhost非常方便。主要在nginx的配置文件nginx.conf中添加一个server即可 比如我想配置两个虚拟主机,通过域名linux.com和linux2.com访问,分别对应的目录是/usr/htdocs/linux 和/usr/htdocs/...
server_name指令可以设置基于域名的虚拟主机,根据请求头部的内容,一个ip的服务器可以配置多个域名。下面这些server_name的参数是有效的: server_name jb51.net; server_name jb51.net www.jb51.net; server_name ...
要求 Nginx可以通过域名构建虚拟主机的方式同时对外提供 http://www.example.com, http://erp.example.com, http://oa.example.com 三个网站的访问。 访问 http://www.example.com 网站返回的HTML代码“<h1> ...
├─2.01 Nginx进阶常见配置-虚拟主机+PHP-FPM.mp4 ├─2.02 Nginx进阶-常见配置-反向代理.mp4 ├─2.03 Nginx进阶基础-常见配置-反向代理.mp4 ├─2.04 Nginx进阶基础-upstream.mp4 ├─2.05 Nginx进阶基础-常用...
后来,通过查看源代码发现MediaWiki是根据$_SERVER[‘SERVER_NAME’]做的跳转,顺藤摸瓜,发现了下列问题: 在一个Nginx虚拟主机中,可以绑定多个server_name,例如: 而server_name的先后顺序的不同,对PHP程序中...
f)多虚拟主机: - 16 - g)多端口设置: - 17 - (3) Resin与Eclipse整合 - 17 - 2. Linux - 18 - (1) 环境变量设置 - 18 - (2) Nginx安装与配置 - 18 - 1) Nginx安装 - 18 - 2) Nginx配置 - 19 - (3) Resin安装与配置...
Nginx中的server_name指令主要用于配置基于名称虚拟主机,server_name指令在接到请求后的匹配顺序分别为: 1、准确的server_name匹配,例如: server { listen 80; server_name ssdr.info www.ssdr.info; ... } 2...
P1818_Nginx视频教程_Nginx实现虚拟主机 P1919_Nginx视频教程_Keepalived简介 P2020_Nginx视频教程_nginx yum命令安装 P2121_Nginx视频教程_Keepalived安装 P2222_Nginx视频教程_keepalived+Nginx高可用集群配置...
2. 在Nginx配置文件conf目录下创建一个专门存放虚拟主机配置的目录,命名为vhosts,可以把虚拟目录的配置全部放在这里。如本例创建名为vhosts_A.conf和vhosts_B.conf文件并打开,在里面写下相关的配置文件。 配置...
1.介绍 1.1 Nginx不仅是一个出色的web软件,其七层代理和负载...然后在serverr模块中定义虚拟主机,但是这个虚拟主机不指定自己的web目录站点,它将使用location匹配url然后转发到上面定义好的web池子中,最后根据调度
#server表示虚拟主机可以理解为一个站点,可以配置多个server节点搭建多个站点 #每一个请求进来确定使用哪个server由server_name确定 #location用来匹配同一域名下多个URI的访问规则 #比如动态资源如何跳转,...
nginx虚拟主机配置 server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } error_page 404 /404.html; # redirect server error pages to the static page /...
只用改一个地方,在http模块里面加入你要引用的虚拟主机配置文件目录即可: 例如:include /usr/local/nginx/default.d/*.conf; http { log_format main '$remote_addr - $remote_user [$time_local] $request ' ...
UPUPW已配置Nginx的虚拟主机支持伪静态文件,示例包含discuz,phpwind,WordPress和ThinkPHP伪静态规则; UPUPW已配置Nginx的虚拟主机支持Pathinfo路径功能; 支持Nginx和PHPfpm服务的单独开启、关闭与重启; 支持...
nginx的默认配置中的虚拟主机允许用户通过IP访问,或者通过未设置的域名访问(比如有人恶意把他自己的域名指向了你的ip) 这是因为默认配置中的server区域里有这一行: listen 80 default; 后面的default参数表示这...
Nginx 配置文件主要分成四部分:main(全局设置)、http(HTTP 的通用设置)、server(虚拟主机设置)、location(匹配 URL 路径)。还有一些其他的配置段,如 event,upstream 等。 通用设置 user nginx 指定...
后面的default参数表示这个是默认虚拟主机。 这个设置非常有用。 比如别人通过ip或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500. 目前国内很多机房都要求网站主关闭空主机头,防止...