Nginx安装步骤 点击获取
Nginx配置文件
Nginx主配置⽂件 /etc/nginx/nginx.conf 是⼀个纯⽂本类型的⽂件,整个配置⽂件是以区块的形式组织的。⼀般每个区块以⼀对⼤括号 {}
1.Main位于nginx.conf配置⽂件的最⾼层
2.Main层下可以有Event、HTTP层
3.HTTP层下⾯有允许有多个Server层, ⽤于对不同的⽹站做不同的配置
4.Server层也允许有多个Location,
nginx默认配置语法
user //设置nginx服务的系统使⽤⽤户
worker_processes //⼯作进程, 配置和CPU个数保持⼀致
error_log //错误⽇志, 后⾯接⼊的是路径
pid //Nginx服务启动时的pid //events事件模块
events { //事件模块
worker_connections //每个worker进程⽀持的最⼤连接数
use //内核模型,select,poll,epoll
//⾮虚拟主机的配置或公共配置定义在http{}段内, server{}段外
http
{ …
//必须使⽤虚拟机配置站点, 每个虚拟机使⽤⼀个server{}段
‘server’ {
listen 80; //监听端⼝, 默认80
server_name localhost; //提供服务的域名或主机名
控制⽹站访问路径
‘location’ / {
root /usr/share/nginx/html; //存放⽹站路径
index index.html index.htm; //默认访问首页⽂件
}
指定错误代码, 统⼀定义错误⻚⾯, 错误代码重定向到新的Locaiton error_page 500 502 503 504 /50x.html;
‘location’ = /50x.html {
root html;
}
}
…
第⼆个虚拟主机配置
‘server’ {
…
}
Nginx⽇志配置
在学习⽇志之前, 我们需要先了解下HTTP请求和返回
curl -v http://192.168.1.1
Nginx⽇志配置规范
//配置语法: 包括: error.log access.log
Syntax: log_format name [escape=default|json] string ...;
Default: log_format combined "...";
Context: http
//Nginx默认配置
log_format main '$remote_addr - $remote_user [$time_local] "$request"'
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
//Nginx⽇志变量
$remote_addr //表示客户端地址
$remote_user //http客户端请求nginx认证⽤户名
$time_local //Nginx的时间
$request //Request请求⾏, GET等⽅法、http协议版本
$status //respose返回状态码
$body_bytes_sent //从服务端响应给客户端body信息⼤⼩
$http_referer //http上⼀级页⾯, 防盗链、⽤户⾏为分析
$http_user_agent //http头部信息, 客户端访问设备
$http_x_forwarded_for //http请求携带的http
要想让nginx访问日志格式生效,添加以下两行在http区域(server区域上):
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 logs/access.log main;
Nginx状态监控
–with-http_stub_status_module 记录 Nginx 客户端基本访问状态信息
Syntax: stub_status;
Default: — Context: server, location
具体配置如下:
先查看一下nginx都有哪些文件
find / -name nginx
然后修改nginx的配置文件:
删除配置文件的空行 和 #
号开头的行
sed -i '/#/d' /usr/local/nginx/conf/nginx.conf
sed -i '/^$/d' /usr/local