nginx常见使用方式和日志功能

一.nginx常见使用方式
1.客户端缓存
对于一些静态资源文件,nginx提供客户端缓存功能,告诉浏览器,什么类型的文件你可以缓存,多久内有效,浏览器可以选择使用缓存,也可以不使用该缓存,每次都从服务端下载
location ~ \.(js|css|jpg|png) {
  expires 1h;
}
所有的js,css,jpg,png文件都可以缓存
1h 1小时内有效
1d 1天内有效

 

2.基于ip的访问控制
server {
  ...
  # 拒绝10.1.1.1主机访问
  deny 10.1.1.1;
  # 允许192.168.211.102访问
  allow 192.168.211.102;
  ...
}

3.基于用户的访问控制
(1)安装httpd-tools
yum -y install httpd-tools
(2)设置授权用户及密码
htpasswd -c /usr/local/nginx/conf/userlist devops
-c 执行授权用户所在文件
devops为用户名

[root@server01 nginx]# cat conf/userlist
devops:nOyiAqvqvgcqE

(3)配置文件
server {
  ...
  # 用户访问控制,auth_basic 提示语
  auth_basic "pls login";
  # 指定授权用户文件
  auth_basic_user_file /usr/local/nginx/conf/userlist;
  ...
}
3.目录列表展示
当匹配到的location下没有找到对应的index.html,index.php等文件时,会展示访问目录下的文件列表,可以做下载使用
location / {
  # 开启列表展示功能
  autoindex on;
  # 人性化方式显示文件的大小
  autoindex_exact_size off;
  # 显示本地时间,加8小时展示
  autoindex_localtime on;
}

二.日志管理
1.访问日志
记录server段的访问记录
/usr/local/nginx/logs/access.log
2.错误日志
nginx启动,运行过程中出现的错误记录在该文件中
/usr/local/nginx/logs/error.log
3.基于域名的日志切割
不同的server段可以配置不同的域名访问
将access访问日志定义在对应的server段下,就可以记录该server的访问日志

# 自定义日志格式
log_format shoplog '$remote_addr@$time_local@$status@$http_user_agent' server {   listen 80;   server_name devops.shop.com;
  # 自定义日志路径,日志文件名称,日志内容格式   access_log
/usr/local/nginx/logs/shop.devops.com.log shoplog;   ... }

所有访问devops.shop.com的记录都会被记录在/usr/local/nginx/logs/shop.devops.com.log文件中

 

posted @ 2019-05-21 21:01  sxlong_work  阅读(10220)  评论(0编辑  收藏  举报