现在我的访问日志文件中有太多记录,因为图像和页面在同一个文件中。是否可以将所有图像移动到一个文件,而将 php 页面移动到第二个文件?(过滤图像和非图像文件)
server {
root /home/nginx/site;
index index.html index.htm index.php;
access_log /home/nginx/site/_log/site_access.log;
error_log /home/nginx/site/_log/site_error.log;
listen 80;
keepalive_timeout 70;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to index.html
try_files $uri $uri/ /index.html;
}
include /etc/nginx/server.conf.d/php.conf;
}
答案1
该access_log
指令可以在文档中所述的不同范围内使用:
上下文:http、服务器、位置、如果在位置、limit_except
例如,可以分割静态和动态内容的位置,并将所需内容记录到您想要的位置。
另一种可能性自 nginx 1.7.0 起是直接在指令中使用变量来设置条件日志记录,access_log
该变量的计算结果不同于0或者空字符串何时必须进行日志记录。给定此变量的配置示例$loggable
如下所示:
access_log /path/to/access.log if=$loggable;