nginx: [warn] “log_format” directive used only on “http” level 解决方法

“nginx: [warn] ‘log_format’ directive used only on ‘http’ level”这个警告信息通常出现在Nginx配置文件中,这是因为该指令只能在http级别中使用。在其他级别(如server或location)使用log_format指令是无效的并会出现警告。

解决此问题可按以下步骤进行:

  1. 把log_format指令移到http上下文块中

在您的Nginx配置文件中,找到log_format指令所在的服务器或位置块,并将其移至http块中。确保指令只在http块内出现一次。

示例:

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

    server {
        ...
    }
}
  1. 禁用重复的log_format指令

在某些情况下,可能会出现多个具有相同名称的log_format指令的情况。这会引起警告并且不利于日志的记录。要解决此问题,只需删除所有不必要的重复指令。

示例:

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

    server {
        log_format mylog '$remote_addr - $remote_user [$time_local] "$request" '
                 '$status $body_bytes_sent "$http_referer" '
                 '"$http_user_agent" "$http_x_forwarded_for"';   // 重复的log_format指令

        ...
    }
}

在以上示例中,出现了相同名称的log_format指令,我们只需删除server块中的指令即可解决警告。

总结:只要确保log_format指令仅在http块中使用,避免定义重复的指令,我们就能消除“nginx: [warn] ‘log_format’ directive used only on ‘http’ level”警告信息。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:nginx: [warn] “log_format” directive used only on “http” level 解决方法 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Nginx HTTP框架提供的请求相关变量

    L73         binary_remote_addr 对端二进制IPV4或IPV6 一般用作限制用户请求缓存key  connection 递增链接序号 connection_requests  一条TCP链接上的请求数量 remote_addr 字符串格式IP地址 remote_port 字符串格式对端端口 proxy_protocol_addr …

    Nginx 2023年4月13日
    00
  • Nginx设置目录浏览并配置验证

    Nginx默认是不允许进行列目录的,如果需要使某个目录可以进行浏览,可如下设置:如: 让/var/www/soft 这个目录在浏览器中完成列出. 一、设置目录浏览1、打开/usr/local/nginx/conf/nginx.conf,找到WebServer配置处,加入以下内容: location /soft/ { root /var/www/; 此处为so…

    2023年4月9日
    00
  • 用nginx搭建简单的文件下载服务器的方法

    这里是用nginx搭建简单的文件下载服务器的方法的完整攻略。 1. 安装nginx 首先,我们要安装nginx。这里以Ubuntu为例,执行以下命令安装: sudo apt update sudo apt install nginx 安装完成后,就可以启动nginx服务: sudo systemctl start nginx 2. 配置nginx 接着,我们…

    Nginx 2023年5月16日
    00
  • nginx php-fpm 配置问题(1)

    nginx php-fpm 配置问题(1) 1.问题    Nginx/FPM/PHP all php files say ‘File not found.’ nginx error日志: [error] 20277#0: *21 FastCGI sent in stderr: “Primary script unknown” while reading r…

    Nginx 2023年4月10日
    00
  • 阿里云ECS+Nginx+nginx_rtmp_module+FFMPEG服务器搭建过程

    Nginx下安装nginx-rtmp-module+ffmpeg搭建流媒体服务器。 参考http://blog.csdn.net/redstarofsleep/article/details/45092147 阿里云环境 1. 使用SecueCRT、FlashFXP连接购买的阿里云ECS。 2. 一般购买后盘是初始化好的。第一次操作忽略这步。挂载新的盘时,可…

    Nginx 2023年4月16日
    00
  • Nginx Rewrite规则详解

    Rewrite规则含义就是某个URL重写成特定的URL,从某种意义上说为了美观或者对搜索引擎友好,提高收录量及排名等。 Rewrite规则的最后一项参数为flag标记,支持的flag标记主要有以下几种:  1)    last :相当于Apache里的(L)标记,表示完成rewrite; 2)    break;本条规则匹配完成后,终止匹配,不再匹配后面的规…

    Nginx 2023年4月12日
    00
  • nginx504网关超时解决方法

    ###问题发生的背景:合作方请求某个接口,由于处理时间较长,导致了网关超时. ###问题分析:1.可能是php程序超时报错;2.php-fpm处理请求超时;3.nginx服务器超时. ###问题解决:1.php超时设置:检查了php超时的配置,在php.ini里面:max_execution_time, 配置为300s,结果还是一样报了504超时. 2.查阅…

    Nginx 2023年4月10日
    00
  • 跨域问题Java方式解决及Nginx方式解决【亲测可行】 nginx通过CORS实现跨域

    这两天和前端同事调试微信公众号项目,就遇到了跨域问题;网上相关博客也挺多的,但有很多细节没有点到,在此呢我也再次记录一下解决方式; (算是踩坑日记吧~ ~ ~)   !问题发现:   页面加载不出来,控制台报错:      当你看到类似上面的这种错误提示,基本上就是跨域问题咯~~~恭喜你中奖啦!   !! 问题解决方式一 —— Java过滤器:    pub…

    Nginx 2023年4月9日
    00
合作推广
合作推广
分享本页
返回顶部