nginx的HTTP配置、版本号设置、定义错误页面、文件检查、favicon.ico、客户端连接、请求报文配置、客户端限制、文件操作优化、文件缓存、文件下载服务、gzip压缩、IP访问控制、输出信息

nginx的HTTP配置

http配置:

http {
   
   server {
   
   listen address[:PORT]|PORT;
   server_name  SERVER_NAME;
   root /PATH/TO/DOCUMENT_ROOT;
   }	
}

listen
listen PORT|address[:port]|unix:/PATH/TO/SOCKET_FILE
listen address[:port] [default_server] [ssl] [http2 | spdy] [backlog=number][rcvbuf=size] [sndbuf=size];

default_server 设定为默认虚拟主机,无法匹配虚拟主机时使用
ssl 限制仅能够通过ssl连接提供服务
backlog=number 超过并发连接数后,新请求进入后援队列的长度
rcvbuf=size 接收缓冲区大小
sndbuf=size 发送缓冲区大小

1.基于port;
listen PORT; 指令监听在不同的端口

2.基于ip的虚拟主机
listen IP:PORT; IP 地址不同

3.基于hostname
server_name fqdn; 指令指向不同的主机名

server_name
server_name name …;
虚拟主机的主机名称后可跟多个由空白字符分隔的字符串

支持*通配任意长度的任意字符
server_name .test.com www.test.

支持~起始的字符做正则表达式模式匹配,性能原因慎用
server_name ~^www\d+.test.com$
说明: \d 表示 [0-9]
匹配优先级机制从高到低
1.首先是字符串精确匹配 如:www.test.com
2.左侧通配符 如:.test.com
3.右侧通配符 如:www.test.
4.正则表达式 如: ~^.*.test.com$
5.default_server

定义路径相关的配置
root
设置web资源的路径映射;用于指明请求的URL所对应的文档的目录路径,可用
于http, server, location, if in location
server {

root /data/www/vhost1;
}

示例
http://www.test.com/images/logo.jpg
–> /data/www/vhosts/images/logo.jpg

location
location [ = | ~ | ~* | ^~ ] uri { … }
location @name { … }
在一个server中location配置段可存在多个,用于实现从uri到文件系统的路
径映射;ngnix会根据用户请求的URI来检查定义的所有location,并找出一个最
佳匹配,而后应用其配置

示例:

server {
   
	server_name www.test.com;
	location /images/ {
   
		root /data/imgs/;
	}
} 
http://www.test.com/images/logo.jpg
--> /data/imgs/images/logo.jpg

= 对URI做精确匹配;
location = / {

}
http://www.test.com/ 匹配
http://www.test.com/index.html 不匹配
^~ 对URI的最左边部分做匹配检查,不区分字符大小写
~ 对URI做正则表达式模式匹配,区分字符大小写
~* 对URI做正则表达式模式匹配,不区分字符大小写
不带符号 匹配起始于此uri的所有的uri
\ 转义符,可将 . * ?等转义为普通符号
匹配优先级从高到低:
=, ^~, ~/~*, 不带符号
注意:虽然nginx上不区分大小写,但是linux文件系统依旧是敏感的

示例:

root /vhosts/www/htdocs/;
http://www.test.com/index.html
--> /vhosts/www/htdocs/index.html

server {
   
	root /vhosts/www/htdocs/ ;
	location /admin/ {
   
		root /webapps/app1/data/;
	}
}
http://www.test.com/admin/index.html
--> /webapps/app1/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值