我有一个apache服务器、一个唯一的域名和多个tomcat实例,下面是我的实际配置:
<VirtualHost *:80>
ServerName my.domain.com
...
ProxyPass /sample_1 ajp://127.0.0.1:8009/sample_1
ProxyPass /sample_2 ajp://127.0.0.1:8009/sample_2
ProxyPass /sample_3 ajp://127.0.0.1:8014/sample_3
ProxyPass /sample_4 ajp://127.0.0.1:8019/sample_4
....
CustomLog logs/my_access_log combined
ErrorLog logs/my_error_log
</VirtualHost>现在,我想对每个tomcat实例使用一个CustomLog,我试图将每个ProxyPass指令放在一个单独的虚拟主机中,但是根据httpd -S输出,除了顶层的虚拟主机之外,我得到了403个错误。
我不喜欢删除ServerName指令,因为服务可以通过IP地址获得。
请帮帮忙
发布于 2017-10-26 14:30:51
您可以结合使用SetEnvIf指令和条件测井来记录对不同日志文件的特定请求。
<VirtualHost *:80>
ServerName my.example.com
...
SetEnvIf Request_URI "/sample_1.*" sample_1
SetEnvIf Request_URI "/sample_2.*" sample_2
CustomLog logs/my_access_log_sample_1 combined env=sample_1
CustomLog logs/my_access_log_sample_2 combined env=sample_2
CustomLog logs/my_access_log combined
ErrorLog logs/my_error_log
</VirtualHost>https://serverfault.com/questions/880442
复制相似问题