Nginx(二),nginx


利用include功能优化nginx的配置文件

写配置文件

重启服务

测试

nginx虚拟主机别名的配置

启动报错:

解决办法:

nginx状态信息配置

添加包含

重启nginx,浏览器访问

第一个server表示nginx启动到现在共处理了多少个连接。

第二个accepts表示nginx启动到现在共创建了多少次握手,请求丢失次数=(握手次数-连接次数)。

第三个handled request表示总共处理了多少次请求。

Reading:nginx读取到客户端的header信息数。

writing:nginx返回给客户端的header信息素。

waiting:nginx已经处理完正在等候下一次请求指令的驻留连接,开启keep-alive的情况下,这个值等于active-(reading+writing)。

nginx错误日志

常见的错误日志级别有[debug|info|notice|warn|error|crit|alert|emerg],级别越高记录的信息越少,生产场景一般是warm|error|crit这三个级别之一,注意不要配置info等级较低的级别,会带来磁盘I/O消耗。

error_log的默认值为:error_log logs/error.log error

可以放置的标签段为:main,http,server,location。

访问日志

log_format:用来定义记录日志的格式(可以定义多种日志格式,取不同名字即可)。

access_log:用来指定日志文件的路径及使用的何种日志格式记录日志。

$remote_addr:记录访问网站的客户端地址。

$http_x_forwarded_for:当前端有代理服务器时,设置web节点记录客户端地址的配置,此参数生效的前提是代理服务器上也要进行相关的x_forwarded_for设置。

$remote_user:远程客户端用户名称。

$time_local:记录访问时间与时区。

$request:用户的http请求起始行信息。

$status:http状态码,记录请求返回的状态,例如:200、404、301等。

$body_bytes_sent:服务器发送给客户端的响应body字节数。

$http_referer:记录此次请求是从哪个链接访问过来的,可以根据referer进行防盗链设置。

$http_user_agent:记录客户端访问信息,例如:浏览器、手机客户端等。

access_log off;这里的off表示不记录访问日志。

默认配置:access_log logs/access.log combined;

放置位置:http,server,location,if in location,limit_except。

重启nginx

日志轮询

执行

设置定时任务

nginx常用日志收集及分析工具有rsyslog、awstats、flume、ELK、storm等。

rewrite

rewrite指令语法

指令语法:rewrite regex replacement [flag];

默认值:none

应用位置:server,location,if。

创建oldboy.html然后进行访问

rewrite指令最后一项参数flag标记说明

last:本条规则匹配完成后,继续向下匹配新的location URI规则。

break:本条规则匹配完成即终止。不再匹配后面的任何规则。

redirect:返回302临时重定向,浏览器地址栏会显示跳转后的URL地址。

permanent:返回301永久重定向,浏览器地址栏会显示后的URL地址。

相关内容