排除.htaccess中的一个目录(不仅仅是重写规则)

时间:2010-11-26 18:17:18

标签: apache wordpress .htaccess mod-rewrite

从.htaccess文件中的重写规则中排除一个或多个目录似乎是一个常见问题。但是,我的.htaccess不仅仅是设置重写规则。我还设置了一些服务器更改(我们在这台服务器上没有suPHP)以及设置一些php文件的前置。例如,这些是一些例子:

    # Make files ending in .php, .html and .xml files etc. parsed by php.
    AddType application/x-httpd-php .php .html .xml .css .js .le .txt

<FilesMatch "\.html$">
php_value auto_prepend_file "/home/2427/spwebsites/www.spwebsites.co.uk/incs/phps/config.php"
</FilesMatch>
# Internal Server Error
ErrorDocument 500 /admin/errors.html?code=500
RewriteEngine On
RewriteRule ^([a-zA-Z0-9-]+)/$ $1.html [L]

我不希望任何这些设置为一个目录(我的文字按安装的地方),有没有办法可以做到这一点?我可以为整个.htaccess文件设置条件语句吗?

在word press目录中添加空白.htaccess文件将不起作用,因为这不会撤消父目录中的设置。

1 个答案:

答案 0 :(得分:1)

我只是在调查你的困境,这是一个棘手的问题。能够在.htaccess ...

中使用DirectoryMatch指令会很高兴

您可以尝试通过另一个.htaccess文件重置特定目录中的值。

因此,在AddType的情况下,将其重置为“.php”可能会起作用(假设它不继承其他值)。绝对不是一个无法访问主配置文件/虚拟主机的理想解决方案。

这是一个奇怪的想法,您可以尝试/测试...将“wordpress”目录放在主根之外(或者您有违规的.htaccess文件)。现在将所有请求路由到wordpress(内部目录)到外部目录。考虑到请求被路由,我想知道Apache是​​否会使用违规的.htaccess吗?