使用 FallbackResource 将所有内容路由到 index.php 除了一个目录

route everything to index.php except one directory using FallbackResource

我在 htaccess 中使用 FallbackResource /index.php 将每次调用重新路由到 index.php

它工作得很好,我得到了我想要的结果,但我需要一个目录才能访问,该目录也会重新路由到 index.php。我怎样才能做到这一点。

FallbackResource 不支持这样的排除。您可以使用 mod_rewrite 作为替代。

您可以在 DOCUMENT_ROOT/.htaccess 文件中使用此规则:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !^exclude index.php [L,NC]

要在一个目录内禁用路由回退,请使用 disabled keyord(Apache 2.4.4 及更高版本)。

  <Directory /var/www/path/to/disabled/dir>
        FallbackResource disabled
  </Directory> 

如果是 .htaccess 文件,请在此目录中使用 FallbackResource disabled