nginx: [emerg] duplicate “log_format“ name “main“ in /usr/local/phpstudy/vhost/sys/nginx/sys.conf:11
前言
- CentOS Linux release 8.2.2004 (Core)
- phpstdy X1.26
- nginx1.15
配置nginx日志出错
nginx: [emerg] duplicate "log_format" name "main" in /usr/local/phpstudy/vhost/sys/nginx/sys.conf:8
名为 “main” 的 “log_format” 已存在,在/usr/local/phpstudy/vhost/sys/nginx/sys.conf 文件的第 8 行。
错误原因
我在nginx的配置文件/usr/local/phpstudy/soft/nginx/nginx-1.15/nginx/conf/nginx.conf
中添加了名为 “main” 的 log_format
。而/usr/local/phpstudy/vhost/sys/nginx/sys.conf
文件已经存在名为 “main” 的 log_format
(phpstdy 带的)。因此产生错误:nginx: [emerg] duplicate "log_format" name "main" in /usr/local/phpstudy/vhost/sys/nginx/sys.conf:8
。
/usr/local/phpstudy/soft/nginx/nginx-1.15/nginx/conf/nginx.conf
的配置如下:
worker_processes auto;
user www;error_log logs/error.log;events {
use epoll;
worker_connections 1024;
multi_accept on;
}http {lua_package_path "/www/common/waf_lua/?.lua;;";include mime.types;log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';gzip on;
gzip_buffers 16 8k;
gzip_comp_level 2;
gzip_min_length 8k;
gzip_types text/plain application/javascript text/css; keepalive_timeout 65;client_body_buffer_size 8m;
client_header_buffer_size 32k;
client_max_body_size 50m;include /usr/local/phpstudy/vhost/sys/nginx/*.conf;
include /usr/local/phpstudy/vhost/nginx/*.conf;
}
stream {include /usr/local/phpstudy/vhost/nginx/*.stream;
}
/usr/local/phpstudy/vhost/sys/nginx/sys.conf
的配置如下:
map $time_iso8601 $logdate {'~^(?<ymd>\d{4}-\d{2}-\d{2})' $ymd;default 'date-not-found';}log_format main '$remote_addr - [$time_local] "$request"'$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_cookie"';access_log logs/access_$logdate.log main;sendfile on;limit_conn_zone $binary_remote_addr zone=perip:10m;limit_conn_zone $server_name zone=perserver:10m;proxy_cache_path proxy_cache levels=1:2 keys_zone=cache_one:100m inactive=2d max_size=1g;lua_shared_dict limit 50m;lua_shared_dict servers 1m;
解决办法
保留一个名为 “main” 的 “log_format” 。
引申一个问题:如果想要为每个 server
(或 vhost
) 指定一个日志格式该如何?
定义不同名字的"log_format"。
比如,定了2个日志格式,分别名为server1
、server2
。
log_format server1 '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';log_format server2 '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';
为每个 server
指定一个日志格式。
server {...access_log /spool/vhost/logs/server1/access.log server1;...
}
server {...access_log /spool/vhost/logs/server2/access.log server2;...
}
参考
http://nginx.org/en/docs/http/ngx_http_log_module.html
nginx: [emerg] duplicate “log_format“ name “main“ in /usr/local/phpstudy/vhost/sys/nginx/sys.conf:11相关推荐
- Found several packages [runtime, main] in ‘/usr/local/Cellar/go/1.18/libexec/src/runtime;
go语言引入 time 包时报错:Found several packages [runtime, main] in '/usr/local/Cellar/go/1.18/libexec/src/ru ...
- Nginx reload的时候出现的问题/usr/local/nginx/logs/nginx.pid
[root@Frankie-4th nginx]# /usr/local/nginx/sbin/nginx -s reload nginx: [error] invalid PID number &q ...
- Nginx解决配置SSL证书报错:nginx: [emerg] unknown directive “ssl_certificate1“ in /usr/local/nginx/conf/ngi...
前段时间自己尝试了下Nginx的反向代理, 将请求转发到Tomcat上; 应公司项目需要就自己研究了下配置添加证书, 实现https的请求; 我的证书是从阿里云买的免费的证书, 按照阿里云的提示, 将 ...
- 出现nginx: [emerg] unknown directive “]“ in /usr/local/openresty/nginx/conf/nginx.conf:74
原因:fastdfs和nginx集成时,fastdfs-nginx-module安装错误 解决方法: ./nginx -s stop #停止nginx服务 cd /home/bigdata/nginx ...
- nginx: [emerg] open() /var/run/nginx/nginx.pid failed (2: No such file or directory)解决方法
nginx: [emerg] open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory) 问题: ...
- nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)
今天测试Docker下配置一个nginx模板的镜像,装好nginx后,使用nginx -t进行检查,报错如下: 1 2 3 4 [root@a381c4c04132 yum.repos.d]# ngi ...
- nginx安装包 linux,Linux(CentOS)环境下安装下载Nginx并配置
1.准备工作 选首先安装这几个软件:GCC,PCRE(Perl Compatible Regular Expression),zlib,OpenSSL. Nginx是C写的,需要用GCC编译:Ngin ...
- 《深入理解Nginx:模块开发与架构解析》一1.6 Nginx的命令行控制
1.6 Nginx的命令行控制 在Linux中,需要使用命令行来控制Nginx服务器的启动与停止.重载配置文件.回滚日志文件.平滑升级等行为.默认情况下,Nginx被安装在目录/usr/local/n ...
- /usr/local/php-5.2.14/sbin/php-fpm start Starting php_fpm –fpm-config
1.将fpm打包放到php源代码中 gzip -cd php-5.2.8-fpm-0.5.10.diff.gz | patch -d php-5.2.8 -p1 2.编译安装php 记得带上 –ena ...
最新文章
- 如何在 Centos8 中安装 Lynis审计工具
- Dependabot:自动创建GitHub PR修复潜在漏洞
- javascript类型注意事项
- android图片保存形式,Android应用开发之Android ScrollView截图和图片保存到相册的方式...
- c++ 每半个小时打印一次_有了3D打印机,后期该如何维护呢
- 微信开发本地调试工具(模拟微信客户端)
- shell如何检测linux发行版本,shell判断软件版本
- linux内核相关的两个问题
- 探索SQL Server元数据(一)
- 删除magisk模块
- APP兼容性专项测试
- 什么是外汇EA?外汇EA有什么风险?
- ISP简介(stm32)
- 1143-最长公共子序列的长度和最长公共子序列
- 【SpringBoot】application配置文件及注入
- 《高级计算机网络》之无线传感网——大连理工大学研究生课程整理笔记(非常详细,通俗易懂)
- [leetcode]378. 有序矩阵中第 K 小的元素
- Word输入空心字母|ℂ ℕ ℝ ℚ ℤ黑板粗体LaTex
- ROS wiki系列|Documentation-ROS部分讲解
- ORACLE EBS的系统集成性
热门文章
- React Native微信支付开发爬坑之旅
- 云计算从“仰望星空”到“脚踏实地”
- 飞鹤乳业CIO:移动化让企业品牌和消费者紧密连接
- cmake中的变量和命令的大小写
- 小蚂蚁学习C语言(35)——两行三列二维数组变三行两列二维数组
- c++ explicit 修饰构造函数
- DNS高级部署使用RSYNC部署搭建DNS view主从服务
- 严重: StandardServer.await: create[8005]:
- oracle中if/else功能的实现的3种写法
- mvc4中的 webapi 的使用方式