Network-Traffic

如何在 Apache 中使用多個 VirtualHost 跟踪正在請求哪個頁面?

  • October 17, 2011

我有一個 Apache 1.3 Web 伺服器,配置了多個VirtualHost服務於多個獨立網站的條目。

在某些時候,Apache 會收到大量請求,這會導致伺服器達到很高的工作量。我想知道所有這些站點中的哪些正在接收請求。

我怎樣才能做到這一點?我已經閱讀了Apache 的mod_info模組,但我不知道它是否存在安全風險。

謝謝!

如果每個域都有一個日誌文件,例如 /var/log/apache/domain.tld/access_log

然後您可以使用 watch、sort 和 du 來找出哪個文件更改最快(因為 apache 總是將內容添加到日誌文件中)

# watch "du -k /var/log/apache/*/access_log |sort -n"

或者如果您有很多文件並且您只對更改最多的主機感興趣

# watch "du -k /var/log/apache/*/access_log |sort -n |tail -30"

我的建議是改變你LogFormat的 include %v,這是ServerName服務<VirtualHost>請求的。

從那裡,對日誌的分析將使您能夠確定大多數請求的來源。

引用自:https://serverfault.com/questions/322063