向.htaccess添加新行会破坏整个站点

时间:2015-12-09 10:36:52

标签: wordpress apache .htaccess

我有一个问题,当我向.htaccess文件添加一个简单的行时,它会立即给我一个内部服务器错误。我没有idead有什么问题,.htaccess文件的当前内容如下:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

如果我添加一行并获得如下所示的.htaccess文件,它会立即破坏网站并给我500内部服务器错误:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

#Begin security
<files wp-config.php>
order allow,deny
deny from all
</files>

请您告诉我我可以检查什么以阻止这种情况发生?

我还注意到的另一件事是,如果我通过wordpress添加安全插件,并开始启用它,它也会破坏网站。

我在尝试加载网站时也查看了错误日志,以下是我得到的错误:

.htaccess: order not allowed here

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题,我注意到我的目录中的以下配置阻止.htaccess工作

        DirectorySecurity directorySecurity = Directory.GetAccessControl(path);
        directorySecurity.SetAccessRuleProtection(true, keepPermissions);
        Directory.SetAccessControl(path, directorySecurity);

将其更改为以下内容和所有内容

AllowOverride FileInfo Options