.htaccess 500内部错误(排除目录)

时间:2015-02-07 21:21:07

标签: apache .htaccess mod-rewrite

我只想提一下,我已经从我的标题中搜索了一些搜索结果但尚未找到解决方案。

我的.htaccess:

RewriteEngine On
AllowOverride All
RewriteRule ^(member)($|/) - [L]
RewriteRule /^([^/]*)$ /index.php?u=$1 [L]

我希望mydomain.com/anything显示index.php?= u =任何内容,除非有"成员",那么它的功能就像.htaccess文件中没有任何内容。我有一个没有任何重写规则的成员文件夹。 无论是否有第2行和第3行,它仍然会给我错误。

错误:错误500 - 内部服务器错误

感谢

1 个答案:

答案 0 :(得分:1)

这里有一些错误:

    .htaccess 中不允许
  1. AllowOverride
  2. RewriteRule在锚/
  3. 之前有^
  4. 如果没有RewriteCond的保护,你的最后一条规则就会无限循环。
  5. 试试这个.htaccess:

    RewriteEngine On
    
    RewriteRule ^(member)($|/) - [L]
    
    RewriteCond %{REQUEST_FILENAME} !-d
    # If the request is not for a valid file
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^([^/]+)$ /index.php?u=$1 [L,QSA]