生产环境中 Apache 重定向故障排除

生产环境中 Apache 重定向故障排除

如何解决生产中的 Apache 重定向问题?我知道某处有一个日志记录功能,可让您记录发生的所有重定向...

答案1

记录正在发生的事情mod_rewrite您需要设置的模块重写日志重写日志级别

RewriteLog         /path/to/mod_rewrite.log
RewriteLogLevel    2

在您的 Apache 配置中(您不能在您的 中设置它们.htaccess)。

请注意,日志记录已发生改变Apache 2.4

答案2

要获取用于调试 Apache 问题(例如重定向)的其他调试信息,您可以将 RewriteLog 和 RewriteLogLevel 添加到配置中。Apache 2.2 和 2.4 之间的配置细节有所不同,因此请检查您正在运行的 Apache 版本。

请检查日志,因为它们可能会告诉您导致重定向的具体细节。通常,可以通过将以下内容添加到 Apache 2.4 配置来解决 Apache 重定向问题:

LogLevel alert rewrite:trace6

参考:http://httpd.apache.org/docs/2.4/mod/mod_rewrite.html#logging

我看到您已替换了 Apache 配置的具体内容以确保安全。这很好,但由于这个原因,我无法检查域的 SSL。浏览器用于该域名的服务器名称指示 (SNI) 也可能存在问题,与 Apache 配置不匹配。

DirectAdmin 可能除了另一个配置外还添加了一个配置。请检查您没有多个具有相同 IP 地址和端口的部分。

您可能还想确认域名与网站的配置相匹配。根据您正在运行的 CMS(Magento、WordPress、Joomla! 等),它可能会重定向回 Apache 重定向的原始域名。

答案3

我通常会创建自己的详细 CustomLog。在其中,我包含 HTTP 响应标头Location

我还包括其他内容,例如响应时间和 HTTP 请求标头X-Forwarded-For,以及其他一些内容。

相关内容