gpt4 book ai didi

apache2 - Apache服务器——多个目录,不同的错误日志

转载 作者:行者123 更新时间:2023-12-02 13:33:42 27 4
gpt4 key购买 nike

我在/var/www 中有两个目录(例如/var/www/app1 和/var/www/app2),我希望将其错误日志发送到不同的文件。两者都在同一个域下,所以我认为不能将它们放在不同的虚拟主机下。因此,例如,我将访问它们:

http://localhost/app1

http://localhost/app2

我看到了这个页面:

Generate access logs for different subdirectories in Apache

其解决方案非常适合访问日志。但是,“env”参数似乎不适用于 ErrorLog 指令。

在这个“发现”之前,我正在研究这个,这似乎是错误的:

<VirtualHost *:80>
ServerAdmin ray@localhost

DocumentRoot /var/www/app1

<Directory />
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order deny,allow
allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/app1/error.log

LogLevel warn

CustomLog ${APACHE_LOG_DIR}/app1/access.log combined
</VirtualHost>

我有点迷失自己应该做什么。也就是说,是否有某种方法可以让 ErrorLog 工作,或者我是否应该继续尝试为每个目录配置虚拟主机。任何帮助,将不胜感激!谢谢!

最佳答案

为什么设置Directory / 的选项在 VirtualHost语境?使用<Directory /var/www/app1>而不是<Directory />

由于Apache ErrorLog directive docs它的上下文是 server config, virtual host - 这意味着只能为整个服务器或 VirtalHost 定义 ErrorLog ,不适用于 Directory 。所以如果你想将不同的日志发送到不同的文件,请尝试使用 SetEnvIf设置环境变量。根据您所在的目录,它应该类似于 SetEnvIf Request_URI ^\/a1\/ a1SetEnvIf Request_URI ^\/a2\/ !a1 。然后根据a1写入日志环境变量。

关于apache2 - Apache服务器——多个目录,不同的错误日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10395043/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com