我解决了在为现有的Magento商店设置暂存环境时遇到的问题。但是我不明白它为什么会起作用。为什么我的网站上没有问题。
这是我得到的错误,每当我尝试导航我的网站暂存主页时,我得到 500内部服务器错误。
在错误日志中我得到了这个:
[Tue Dec 17 01:12:52 2013] [error] [client 127.0.0.1] Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.
[Tue Dec 17 12:56:17 2013] [error] [client 127.0.0.1] Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: http://localhost.mysite.com/
稍微research online,我通过将 .htaccess 文件 RewriteBase 设置更改为RewriteBase /
来解决此问题。在我的实际网站上,此设置已注释为#RewriteBase /magento/
。
答案 0 :(得分:1)
为什么只在我的暂存环境中需要此设置?
可能是因为您的暂存环境位于文档根目录中名为/magento/
的目录中。如果您有以下支票:
RewriteCond %{REQUEST_FILENAME} !-f
并且基础错误,检查文件是否存在失败。基数用于附加到相对URL路径的开头。因此,如果您的文件位于/magento/
,那么没有正确的基础,您的检查将失败,您的规则将无限循环(或直到达到内部递归限制)。在您的生产环境中,文件可能位于文档根目录中,因此基本不是必需的,因为规则与您重写的文件位于同一目录中。
至于其他两个问题,如果不查看所有规则和所有设置,都无法回答。