log_format directive may be used only on http level

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

时间: 2025-01-24 15:21:43

log_format directive may be used only on http level的相关文章

nginx1.2.4: [warn] "log_format" directive used only on "http" level 解决方法

将nginx升级到1.2.4稳定版之后,会发现之前的vhost/*.conf中的日志配置都报了如下的warn: nginx: [warn] the "log_format" directive may be used only on "http" level 上网搜索解决方案如下: 将/vhost/xxx.conf里server段里的下面代码移出该server段即可. 但是这样的又会产生一个问题,就是各子域名的日志文件都会记录所有请求的日志,等了好久都没找到解决方案

nginx1.2.4: [warn] “log_format” directive used only on “http” level

将nginx升级到1.2.4稳定版之后,会发现之前的vhost/*.conf中的日志配置都报了如下的warn:  代码如下 复制代码 nginx: [warn] the "log_format" directive may be used only on "http" level 上网搜索解决方案如下: 将/vhost/xxx.conf里server段里的下面代码移出该server段即可. 但是这样的又会产生一个问题,就是格子域名的日志文件都会记录所有请求的日志,等

采用ngxtop实现nginx实时访问数据统计_nginx

对于nginx的实时访问数据统计可采用ngxtop实现监控web server的访问情况 .ngxtop 允许你对 NGINX 的访问日志 (access log) 进行实时解析, 并输出类似 top 的有用信息. ngxtop 是 python 脚本安装包,需要python支持. 对于python的包和库文件我们一般喜欢pip管理,没有安装的可以: wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py python get

Nginx系列教程:HTTP Rewrite模块

ngx_http_rewrite_module 该模块允许使用正则表达式改变URI,并且根据变量来转向以及选择配置. 如果在server级别设置该选项,那么他们将在location之前生效.如果在location还有更进一步的重写规则,location部分的规则依然会被执行.如果这个URI重写是因为location部分的规则造成的,那么location部分会再次被执行作为新的URI. 这个循环会执行10次,然后Nginx会返回一个500错误. 指令 [#break break] [#if if]

AngularJS Slider指令(directive)扩展

继上一篇基于jQuery UI Autocomplete的AngularJS 指令(directive)扩展,在这里发布一个AngularJS的Slider扩展.如 果你还不了解AngularJS话的情参见AngularJs - Javascript MVC 框架,Angular-Bootstrap和Compiler以及Google-AngularJS 官方文档. jsfiddle演示:http://jsfiddle.net/whitewolf/vNfsm/20/embedded/: html:

jsp-Page directive has invalid attribute: errorpage

问题描述 Page directive has invalid attribute: errorpage 这大概是什么问题啊?在jsp中出现错误时,跳转到一个提示的jsp页面,然后就报这个错了,求大神解决啊 解决方案 errorpage的p要大写!!!!!!!!!

angularjs directive-agularjs中在directive中动态加载template如何实现

问题描述 agularjs中在directive中动态加载template如何实现 由于 agularjs内的$http是异步的请求方式 而我的html代码有一部分存储在后台,遂使用watch来监听html变量的变化 ,但问题是拿到了最新的html字符串如何赋给directive中的template.

js文件-angular 怎么同时用controller,directive,filter

问题描述 angular 怎么同时用controller,directive,filter 我再页面中引用了3个js文件,一个是controller,一个是directive,一个是filter,发现页面不能执行directive中的东西,但是,不引用filter时就可以执行,为甚么? 我没有用框架,就是页面引用js的方式. 解决方案 同时用肯定是没问题,你的filter里面是不是有错误,把错误贴上来

AngularJs 指令directive之controller,link,compile

关于自定义指令的命名,你可以随便怎么起名字都行,官方是推荐用[命名空间-指令名称]这样的方式,像ng-controller.不过你可千万不要用 ng-前缀了,防止与系统自带的指令重名.另外一个需知道的地方,指令命名时用驼峰规则,使用时用-分割各单词.如:定义myDirective,使用时 像这样:<my-directive>. 这里列出directive的合法命名: ng:bind ng-bind ng_bind x-ng-bind data-ng-bind 我是教师,在新建试题输入分数的时候