![使用 mod_proxy 查看对真实服务器的请求](https://linux22.com/image/605352/%E4%BD%BF%E7%94%A8%20mod_proxy%20%E6%9F%A5%E7%9C%8B%E5%AF%B9%E7%9C%9F%E5%AE%9E%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%E8%AF%B7%E6%B1%82.png)
我的设置涉及使用带有 mod_cache 和 mod_proxy 的 apache 在我的 iOS 应用程序和 Web 服务之间代理和缓存 xml 数据。现在我正在使用 awstats 查看我的 iOS 应用程序向我的代理服务器发出了多少请求。有没有办法查看实际向 Web 服务的服务器发出的请求的统计信息(或只是数字)?
为了清晰起见,下面是服务器设置的图表:
iOS 应用程序 <-----> 我的缓存代理服务器 <-----> Web 服务
请注意,除了与 Web 服务交互之外,我无法访问 Web 服务的服务器。
答案1
可能有一种方法可以使用 Apache 的调试日志模块(mod_forensic),但它将生成比您需要的多得多的日志信息,并且您几乎肯定会编写一个日志解析器和过滤例程来执行此操作。
最简单的解决方案是在同一台机器上配置第二个非缓存代理服务器(甚至可以是相同的 Apache 配置,监听环回),让它将其请求记录到一组单独的日志文件中,然后让缓存代理服务器代理该服务器而不是后端 Web 服务。因此,您的新设置将如下所示:
iOS app <-> [caching proxy server <-> non-caching proxy server] <-> web service
请求将是本地的,因此您不会增加太多的延迟,但最终将使用更多的 Apache 资源,因此请进行适当的配置。