centos7+nginx1.6.2,配置目录/home/mysite绑定了100个网站(网站程序一样,链接数据库不一样)然后他们的日志配置是access_log /home/mysite/logs/$host/access.log main;重新启动nginx,访问网站,访问日志没有生成,nginx错误日志中提示:2014/12/22 23:56:11 [crit] 14021#0: *1 open() "/home/mysite/logs/xxxxA.com/access.log" failed (2: No such file or directory) while logging request, client$修改nginx.confaccess_log /home/mysite/logs/$host.access.log main;重启nginx再访问网站,错误日志:2014/12/23 00:00:34 [crit] 14021#0: *6 open() "/home/mysite/logs/xxxxA.com.access.log" failed (13: Permission denied) while logging request, client: 113.$目录 ll /home/mysite[root@flxx nginx]# ll /home/mysitetotal 12
drwxr-xr-x 2 mysite root 4096 Dec 22 23:04 bak
drwxr-xr-x 2 mysite root 4096 Dec 22 23:04 logs
drwxr-xr-x 2 mysite root 4096 Dec 22 23:37 www如何解决1)nginx 不同域名自动生成目录问题2)nginx 日志写入权限问题
2 回答
子衿沉夜
TA贡献1828条经验 获得超3个赞
目录权限的问题,你的logs目录是除了root用户意外都不能写,所以会Permission denied,chown成Nginx的用户或者最简单权限改成777
慕尼黑5688855
TA贡献1848条经验 获得超2个赞
不同的域名生成目录可以这样,在启动或重读 Nginx
配置的时候,cd 到 www 目录,然后执行以下命令,就可以在logs目录下创建相应的域名目录了。
find . -type d -maxdepth 1 -exec mkdir -p ../logs/{} \;
日志写入权限的问题呢,解决方法就很多了:
方法一、由于是日志目录,不必要做过多的权限,直接把该目录设置成 777 权限即可。
方法二、或者把该目录的所有者和所属组改成与
Nginx
中的user
对所应
这中间有坑,使用时注意咯!
如果你在创建这些日志目录的时候是使用的 root 用户,那创建完相应的目录先万别忘记改权限。
- 2 回答
- 0 关注
- 11545 浏览
添加回答
举报
0/150
提交
取消