HTAccess禁用文件夹及其内容的WordPress重写规则

时间:2011-03-04 作者:Fábio Antunes

我在一个名为app 在我的Wordpress安装中,我需要禁用该文件夹及其内容的所有Wordpress重写规则。所以当我去www.domain.com/app 我得到了我的应用程序页面,而不是标准的Wordpress 404页面。

我知道这是非常基本的apache重写规则,我搜索了这个,尝试了一些东西,但效果不好。

差点忘了,我只需要编辑Wordpress htaccess文件就可以了。该应用程序有自己的htaccess文件。

谢谢

EDIT: htaccess content

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

EDIT: Application htaccess

DirectoryIndex index.php
<FilesMatch "\\.(php|inc)$">
Order allow,deny
deny from all
</FilesMatch>
<FilesMatch "(index.php|download.php)$">
Order allow,deny
allow from all
</FilesMatch>
这些规则没有多大作用,它们基本上拒绝访问所有PHPINC 文件类型,除了index.phpdownload.php. 哪些是用户需要访问的,其余的是内部使用的类PHP.

EDIT 3: Resolution:

事实证明,Wordpress没有什么问题htaccess 或者应用程序在远程托管服务器上打开错误报告后,PHP报告了一个损坏的文件,一旦被替换,所有文件都开始正常工作。我的感谢Wietse Venema 对于建议。

1 个回复
最合适的回答,由SO网友:Wietse Venema 整理而成

默认值。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
神奇之处在于以RewriteCond。他们指示Apache应用该规则RewriteRule . /index.php [L] (这意味着“任何URL都将转到index.php”),仅当URL不是现有文件时!-f 或现有目录!-d.

因此,这在默认情况下应该是可行的。当您尝试访问现有文件时,Wordpress重写规则不适用。

结束

相关推荐

如何解决设置WordPress多站点时出现的.htaccess内部服务器错误?

我被困在里面了。为多站点创建htaccess文件。我在page now internal error 500中遇到一个错误,当我在apache中查看日志时,它显示C:/www/vhosts/localhost/wordpress3/。htaccess:此处不允许重写引擎。我允许它出现在httpd中。通过从LoadModule rewrite\\u module modules/mod\\u rewrite中删除哈希来配置。所以,仍然得到一个错误,它说找不到页面。你能帮我一下吗。