【问题标题】:Excluding one directory in .htaccess (not just rewrite rules)排除 .htaccess 中的一个目录(不仅仅是重写规则)
【发布时间】:2010-11-26 18:17:18
【问题描述】:

从 .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]

我不想为一个目录(我的 word press 安装所在的位置)设置任何这些,有没有办法可以做到这一点?我可以为整个 .htaccess 文件设置条件语句吗?

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

【问题讨论】:

    标签: apache wordpress .htaccess mod-rewrite


    【解决方案1】:

    我只是在调查您的困境,这是一个棘手的问题。能够在 .htaccess 中提供 DirectoryMatch 指令会很好......

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

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

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

    【讨论】:

    • 感谢您的回复,很抱歉延迟回复您。重置 .htaccess 可能是这样做的唯一方法,但实施起来会很痛苦。我将尝试实施您的想法并回复您。不然真的没有别的办法了吗?
    • 我已经设法重置了我认为重要的 .htaccess 文件中的位。我认为您的解决方案将是最好的解决方案。谢谢!
    猜你喜欢
    • 2010-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多