log_format directive may be used only on http level

简介: <p></p> <div class="summary" style="background-color:rgb(246,250,253); border:1px solid rgb(220,221,221); font-size:14px; line-height:23px; margin:15px 0px 0px; padding:12px 5px 6px; text-align:j

nginx 日志出错信息 :nginx: [warn] the "log_format" directive may be used only on "http" level一般来说如果nginx的版本...

nginx 日志出错信息 :
nginx: [warn] the "log_format" directive may be used only on "http" level 

一般来说如果nginx的版本在1以下,那么不会出错。
对于nginx的新版本,比如1.1.15 ,会出这样的问题,nginx的配置规则有更新,这句话的警告意思是log_format 只能用在 http这个标签中,但是多数情况下,我们有可能在nginx.conf 中include 一个配置文件,在include的配置文件中如果把log_format 放到server 段里,就会出问题,这个在老版本的nginx的语法检查中是不会出错的。
那么好,就把log_format 放到 server 段的前面吧,像这样:

nginx.conf:
include little.conf
---------------------------------------------------------------------------------------------------------------------------------------------------

little.conf:
log_format  access '$http_x_forwarded_for $remote_user [$time_local] "http://$host" "$request" '
                          '$status $body_bytes_sent "$http_referer" "$http_user_agent" "$HTTP_X_UP_CALLING_LINE_ID" ';
access_log  /usr/local/nginx/logs/access.log  access;

server
{
   listen       80;
   server_name  xxx.com;
.....................


[root@t1 ~]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@t1 ~]# 


参考:

http://www.a8z8.com/html/2012/tech_1117/46.html

http://www.baibaobing.com/linux/6.html/comment-page-75

http://xiahongyuan.blog.51cto.com/906214/852607

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
Java Spring
set Spring log level to debug so that we can learn more from log
set Spring log level to debug so that we can learn more from log
79 0
set Spring log level to debug so that we can learn more from log
|
数据格式 XML
Log4Net level优先级别
level定义记录的日志级别,就是说,你要记录哪个级别以上的日志,级别由低往高依次是:ALLDEBUGINFOWARNERRORFATALNone 一个正在用的配置示例: ...
970 0
|
10天前
|
XML Java 数据格式
Servlet 教程 之 Servlet 客户端 HTTP 请求 3
该教程展示了如何在Servlet中处理客户端HTTP请求,特别是获取HTTP头信息。示例代码创建了一个名为`DisplayHeader`的Servlet,它扩展了`HttpServlet`并重写了`doGet`方法。在`doGet`中,使用`HttpServletRequest`的`getHeaderNames()`遍历所有头部,显示其名称和对应值。Servlet在TomcatTest项目下,通过`web.xml`配置映射到`/TomcatTest/DisplayHeader`路径。
29 14
|
21天前
|
Java
java原生发送http请求
java原生发送http请求
|
28天前
|
网络协议 Linux iOS开发
推荐:实现RTSP/RTMP/HLS/HTTP协议的轻量级流媒体框架,支持大并发连接请求
推荐:实现RTSP/RTMP/HLS/HTTP协议的轻量级流媒体框架,支持大并发连接请求
57 1
|
10天前
|
安全 Java 网络安全
Servlet 教程 之 Servlet 客户端 HTTP 请求 2
Servlet教程介绍了如何在Servlet中处理HTTP请求,包括获取Cookie、头信息、参数、Session等。方法如:`getCookies()`、`getAttributeNames()`、`getHeaderNames()`、`getParameterNames()`等。还能获取身份验证类型、字符编码、MIME类型、请求方法、远程用户信息、URL路径、安全通道状态以及请求内容长度等。此外,可通过`getSession()`创建或获取Session,并以`Map`形式获取参数。
21 8
|
2天前
|
JSON 编解码 Go
Golang深入浅出之-HTTP客户端编程:使用net/http包发起请求
【4月更文挑战第25天】Go语言`net/http`包提供HTTP客户端和服务器功能,简化高性能网络应用开发。本文探讨如何发起HTTP请求,常见问题及解决策略。示例展示GET和POST请求的实现。注意响应体关闭、错误处理、内容类型设置、超时管理和并发控制。最佳实践包括重用`http.Client`,使用`context.Context`,处理JSON以及记录错误日志。通过实践这些技巧,提升HTTP编程技能。
16 1
|
2天前
|
前端开发 API UED
AngularJS的$http服务:深入解析与进行HTTP请求的技术实践
【4月更文挑战第28天】AngularJS的$http服务是核心组件,用于发起HTTP请求与服务器通信。$http服务简化了通信过程,通过深入理解和实践,能构建高效、可靠的前端应用。
|
3天前
|
Go 开发者
Golang深入浅出之-HTTP客户端编程:使用net/http包发起请求
【4月更文挑战第24天】Go语言的`net/http`包在HTTP客户端编程中扮演重要角色,但使用时需注意几个常见问题:1) 检查HTTP状态码以确保请求成功;2) 记得关闭响应体以防止资源泄漏;3) 设置超时限制,避免长时间等待;4) 根据需求处理重定向。理解这些细节能提升HTTP客户端编程的效率和质量。
15 1
|
4天前
|
存储 缓存 开发框架
Flutter的网络请求:使用Dart进行HTTP请求的技术详解
【4月更文挑战第26天】了解Flutter网络请求,本文详述使用Dart进行HTTP请求