从.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文件将不起作用,因为这不会撤消父目录中的设置。
答案 0 :(得分:1)
我只是在调查你的困境,这是一个棘手的问题。能够在.htaccess ...
中使用DirectoryMatch
指令会很高兴
您可以尝试通过另一个.htaccess文件重置特定目录中的值。
因此,在AddType
的情况下,将其重置为“.php”可能会起作用(假设它不继承其他值)。绝对不是一个无法访问主配置文件/虚拟主机的理想解决方案。
这是一个奇怪的想法,您可以尝试/测试...将“wordpress”目录放在主根之外(或者您有违规的.htaccess文件)。现在将所有请求路由到wordpress(内部目录)到外部目录。考虑到请求被路由,我想知道Apache是否会使用违规的.htaccess吗?