大佬教程收集整理的这篇文章主要介绍了自定义nginx配置变量未扩展,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在运行Nginx版本1.2.8.
以下配置中的$log和$elog似乎没有扩展,因此没有记录任何内容.这是问题,我怎样才能让它们扩展?
Nginx配置:
server {
listen xx.xx.xx.xx:80 default;
server_name domain.com;
set $docroot /home/domain.com/public_html;
set $log /home/domain.com/logs/access_log;
set $elog /home/domain.com/logs/error_log;
root $docroot;
error_log $elog;
include /etc/Nginx/http-BACkend.conf;
}
/etc/Nginx/http-BACkend.conf配置:
.....
LOCATIOn ~* ^.+\.(jpg|jpeg|gif|png|svg|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|ico|swf|txt|tgz|tbz|pdfpls|torrent)${
root $docroot;
try_files $uri @fallBACk;
access_log $log main;
error_log $elog;
expires 30d;
add_header Pragma "public";
add_header Cache-Control "public";
# error_page 404 = @fallBACk;
}
.....
UPD:感谢Valery Viktorovsky我通过更改日志文件夹的权限来解决这个问题.
chown -R apache.root /home/*/logs/
chmod -R 750 /home/*/logs/
提到的解决方法略有修改,也已应用.没有它,即使拥有正确的权限,它也无法运行. $log和$elog的值保持不变,但是添加了斜杠.
更新了/etc/Nginx/http-BACkend.conf配置:
.....
LOCATIOn ~* ^.+\.(jpg|jpeg|gif|png|svg|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|ico|swf|txt|tgz|tbz|pdfpls|torrent)${
root $docroot;
try_files $uri @fallBACk;
# access_log $log main;
# error_log $elog;
access_log /$log main;
error_log /$elog;
expires 30d;
add_header Pragma "public";
add_header Cache-Control "public";
# error_page 404 = @fallBACk;
}
.....
仍然存在问题,因为apache使用所有者root创建日志文件.
为了部分解决这个问题,在logrotate配置中添加了相同的命令:
/home/*/logs/*_log {
missingok
notifempty
weekly
minsize 50M
compress
rotate 60
sharedscripts
postrotate
/sbin/service Nginx reload > /dev/null 2>/dev/null || true
/sbin/service httpd reload > /dev/null 2>/dev/null || true
chown -R apache.root /home/*/logs/ > /dev/null 2>/dev/null || true
chmod -R 750 /home/*/logs/ > /dev/null 2>/dev/null || true
endscript
}
因此,请检查/home/domain.com/logs目录的权限.
您也可以使用小型解决方法:
server {
set $log 'home/domain.com/logs/access_log';
access_log /$log;
}
以上是大佬教程为你收集整理的自定义nginx配置变量未扩展全部内容,希望文章能够帮你解决自定义nginx配置变量未扩展所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。