Nginx扩展应用

2019-07-20  本文已影响0人  Jzyue

一、网站web服务扩展应用

1、nginx服务监控状态页部署

vim conf.d/state.conf
server {
listen 80;
server_name state.oldboy.com;
location / {
stub_status;
}
}

2、部署完成后打开浏览器显示内容及分析

Active connections: 2
(激活连接数,并发数)
server accepts handled requests
6 6 79
(server accepts:客户端访问服务端接收的总链接数量,handled:客户端访问服务端处理的总链接数量, requests:接收请求报文总数量)
Reading: 0 Writing: 1 Waiting: 1
(Reading:读取请求头的数量,Writing:响应请求头的数量, Waiting:内存中未处理的请求数量)

二、网站页面跳转

1、什么是页面跳转

1、将url信息改变。
2、将uri信息改变。
3、完成伪静态配置。

2、如何实现页面跳转

1、rewrite实现跳转。
Syntax: rewrite regex replacement [flag];
匹配跳转信息
Default: —
Context: server, location, if

last
stops processing the current set of ngx_http_rewrite_module directives and starts a search for a new location matching the changed URI;
break
stops processing the current set of ngx_http_rewrite_module directives as with the break directive;
redirect
returns a temporary redirect with the 302 code; used if a replacement string does not start with “http://”, “https://”, or “$scheme”;
permanent
returns a permanent redirect with the 301 code.
2、return实现跳转
配置简单方便,直接跳转。
Syntax: return code [text];
return code URL;
return URL;
Default: —
Context: server, location, if
3、页面实践操作
跳转配置中last与break区别对比示例
server {
listen 80;
server_name rewrite.oldboy.com;
root /html;
location ~ ^/break/ {
rewrite ^/break/ /test/ break;
}
location ~ ^/last/ {
rewrite ^/last/ /test/ last;
}
location /test/ {
default_type application/json;
return 200 'ok';
}
}

    break:一旦跳转完毕,就会停止后续操作过程
    last: 一旦跳转完毕,会继续访问页面配置信息

三、网站日志信息

1、访问日志access.log

/var/log/nginx

nginx访问日志格式定义

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';

access_log  /var/log/nginx/access.log  main;
$remote_addr:用户访问源地址信息
$remote_user:用户访问网站认证信息
[$time_local] :访问网站时间信息
$request:http请求行信息
$status:显示状态码
$body_bytes_sent :响应报文主体大小
$http_referer:
$http_user_agent:用户使用的浏览器
$http_x_forwarded_for:

2、错误日志error.log

/var/log/nginx

nginx错误日志格式定义

error_log /var/log/nginx/error.log warn;

小提示:有的时候网站没有自己的log也会产生错误日志,解决方法,将自己的log文件命名为favicon.ico并上传到/html/favicon.ico此目录。

3、日志操作

ll -rt #检查最新的日志文件

四、网站服务location配置

location:局部配置
server:全局配置
= :精确匹配,最优先,访问目录 bd.com/images
~ :模糊匹配,区分大小写,访问目录bd.com/images/a.jpg
~* :模糊匹配,不区分大小写
^~ :优先匹配,
/目录:路径匹配
/ :默认匹配
location = / {
return 301;
}
location = /documents {
return 302;
}
location = /images {
return 303;
}

上一篇下一篇

猜你喜欢

热点阅读