【问题标题】:How to exclude a subfolder from .htaccess如何从 .htaccess 中排除子文件夹
【发布时间】:2011-05-04 23:35:00
【问题描述】:

我正在使用插件用户访问管理器来限制对 Wordpress 站点中文件夹上传的访问。 此文件夹位于 example.com/wp-content/uploads/。 该插件已将这个 .htaccess 写入该文件夹:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule (.*) /index.php?uamfiletype=attachment&uamgetfile=$1 [L]
</IfModule>

在该文件夹 (/wp-content/uploads/) 中,还有一个名为 wpsc (/wp-content/uploads/wpsc/) 的文件夹,其中包含该站点商店的文件。 现在 .htaccess 工作正常,但它也限制了 wpsc 文件夹。我需要添加一个例外,以便每个人都可以访问 wpsc 文件夹。

【问题讨论】:

    标签: .htaccess mod-rewrite wordpress


    【解决方案1】:

    在 wpsc/ 文件夹中放置一个 .htaccess 文件,内容如下:

    <IfModule mod_rewrite.c>
    RewriteEngine Off
    RewriteBase /
    </IfModule>
    

    这会否决父文件夹中 .htaccess 文件中的重写规则

    这适用于插件 WP Photo Album Plus,i.c. ../wp-content/uploads/wppa/ 文件夹。

    【讨论】:

      【解决方案2】:

      您可以使用RewriteCond 来检查匹配的字符串:

      RewriteCond $1 !^wpsc/
      RewriteRule (.*) /index.php?uamfiletype=attachment&uamgetfile=$1 [L]
      

      【讨论】:

      • 不幸的是,这不起作用。我尝试了其他替代方法,例如 !^wpsc、!^/wpsc/、!^/wp-content/uploads/wpsc 等等,但它们也不起作用。
      • @Luis Herranz:好吧,既然基本路径是/,你实际上需要使用!^wp-content/uploads/wpsc/
      猜你喜欢
      • 2012-11-30
      • 2015-03-21
      • 1970-01-01
      • 2011-01-20
      • 1970-01-01
      • 2013-07-17
      • 1970-01-01
      • 2015-01-21
      • 2013-10-27
      相关资源
      最近更新 更多