.htaccess文件导致500内部服务器错误

时间:2015-06-14 10:33:35

标签: apache .htaccess mod-rewrite

我的.htaccess文件导致500内部服务器错误

    Options -Indexes

    AddDefaultCharset utf-8
    #DefaultLanguage bg
    ServerSignature Off

    <IfModule mod_rewrite.c>
            RewriteEngine on
            RewriteBase /
            RewriteCond %{REQUEST_URI} !webroot
            RewriteRule    ^$    webroot/    [L]
            RewriteRule    (.*) webroot/$1    [L]
    </IfModule>

mod_rewrite模块已启用,我认为引发问题的行是这一行:

RewriteRule    ^$    webroot/    [L]

如果我从文件中删除RewriteRule行,它一切正常,但是一旦我添加它们就会得到500错误。我只有一些.htaccess文件的基本知识,所以任何提示和解释都非常受欢迎。谢谢!

编辑: 作为参考,这里是webroot文件夹中的.htaccess文件,如评论中所要求的那样:

Options -Indexes
AddDefaultCharset utf-8
#DefaultLanguage bg
ServerSignature Off
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

我将尝试访问apache日志文件,看看我是否可以从那里的记录中获得一些指导。

另一个编辑:以下是apache记录的错误:

  

[Sun Jun 14 14:27:19 2015] [错误] [客户端SOME_IP_ADDRESS]请求   由于可能,超过了10个内部重定向的限制   配置错误。使用&#39; LimitInternalRecursion&#39;增加   必要时限制。使用&#39; LogLevel debug&#39;获得回溯。,referer:   SOME_REFERER [Sun Jun 14 14:27:19 2015] [错误] [客户   SOME_IP_ADDRESS]请求超出了10个内部重定向的限制   由于可能的配置错误。使用&#39; LimitInternalRecursion&#39;至   必要时增加限制。使用&#39; LogLevel debug&#39;得到一个   backtrace。,referer:SOME_REFERER [Sun Jun 14 14:27:19 2015] [错误]   [client SOME_IP_ADDRESS]请求超出了10内部限制   由于可能的配置错误而重定向。使用   &#39; LimitInternalRecursion&#39;必要时增加限额。使用   &#39; LogLevel debug&#39;获得回溯。,推荐人:MY_DOMAIN_NAME [孙军   14 14 14:27:19] [错误] [客户端SOME_IP_ADDRESS]超出请求   由于可能的配置,限制了10次内部重定向   错误。使用&#39; LimitInternalRecursion&#39;如果增加限制   必要。使用&#39; LogLevel debug&#39;获得回溯。,referer:   MY_DOMAIN_NAME [2015年6月14日14:27:20] [错误] [客户   SOME_IP_ADDRESS]请求超出了10个内部重定向的限制   由于可能的配置错误。使用&#39; LimitInternalRecursion&#39;至   必要时增加限制。使用&#39; LogLevel debug&#39;得到一个   backtrace。,referer:SOME_REFERER [Sun Jun 14 14:27:20 2015] [错误]   [client SOME_IP_ADDRESS]请求超出了10内部限制   由于可能的配置错误而重定向。使用   &#39; LimitInternalRecursion&#39;必要时增加限额。使用   &#39; LogLevel debug&#39;获得回溯。,引用者:SOME_REFERER [孙军   14 14 14:27:20] [错误] [客户端SOME_IP_ADDRESS]超出请求   由于可能的配置,限制了10次内部重定向   错误。使用&#39; LimitInternalRecursion&#39;如果增加限制   必要。使用&#39; LogLevel debug&#39;获得回溯。,referer:   MY_DOMAIN_NAME [2015年6月14日14:27:20] [错误] [客户   SOME_IP_ADDRESS]请求超出了10个内部重定向的限制   由于可能的配置错误。使用&#39; LimitInternalRecursion&#39;至   必要时增加限制。使用&#39; LogLevel debug&#39;得到一个   backtrace。,referer:MY_DOMAIN_NAME

1 个答案:

答案 0 :(得分:0)

您在行[L]的末尾使用了RewriteRule选项,确保大括号中没有前导或尾随空格。即

[L ] or [ L]