更改Nginx日志文件位置

更改Nginx日志文件位置,nginx,Nginx,我无法获取要使用的/etc/nginx/nginx.conf http块中的任何更改。我从最简单的事情开始——我想将access.log的名称修改为其他名称(即a.log)。这是一个普通的nginx安装(还没有自定义配置文件)。以下是我所知道的: 更改nginx.conf头部的值会影响配置(将辅助进程4更改为辅助进程2会更改辅助进程的数量) 在nginx.conf的http块中出现语法错误会导致nginx在重新启动时抛出错误 将访问日志更改为访问日志/var/log/nginx/a.log不会

我无法获取要使用的/etc/nginx/nginx.conf http块中的任何更改。我从最简单的事情开始——我想将access.log的名称修改为其他名称(即a.log)。这是一个普通的nginx安装(还没有自定义配置文件)。以下是我所知道的:

  • 更改nginx.conf头部的值会影响配置(将辅助进程4更改为辅助进程2会更改辅助进程的数量)
  • 在nginx.conf的http块中出现语法错误会导致nginx在重新启动时抛出错误
  • 将访问日志更改为访问日志/var/log/nginx/a.log不会修改日志的位置,nginx实际上会继续记录到/var/log/nginx/access.log
以下是我的nginx.conf文件的一个片段:

user www-data;
worker_processes 4;
pid /run/nginx.pid;

events {
        worker_connections 768;
}

http {
        include /etc/nginx/mime.types;
        default_type application/octet-stream;

        access_log /var/log/nginx/a.log;
        #....
}

它是否像我修改被其他配置文件覆盖的http块一样简单?谢谢您的帮助。

您的访问日志不是也在服务器块中定义的吗?查看nginx/sites enabled/中的默认配置。
在这种情况下,http块中的值被较低块中的值覆盖

尝试“grep-r/var/log/nginx/access.log/etc/nginx”和“grep-r include/etc/nginx”。根据您使用的发行版,“普通”安装可能会有所不同,但它可能是像/etc/nginx/conf.d/default这样的文件,指定默认vhost应该如何工作。“grep-r/var/log/nginx/access.log/etc/nginx”不会返回任何内容,也不会返回任何内容“grep-r include/etc/nginx”返回“/etc/nginx/nginx.conf:include/etc/nginx/mime.types/etc/nginx/nginx.conf:#include/etc/nginx/naxsi_core.rules/etc/nginx/nginx.conf:include/etc/nginx/conf.d/*.conf/etc/nginx/nginx.conf:include/etc/nginx/sites enabled/*;“谢谢你的输入。这是一个ubuntu发行版。conf.d中没有文件。也许你启用了/etc/nginx/sites/default文件?谢谢!我需要将访问日志的更改放在服务器块中。要更改日志的格式,我必须在nginx.conf http块中放一个log\u格式行,现在一切都按预期进行了。”。