4

我想阻止人们访问除/sandbox,/WebDev/Projects

我试过这个:

<目录 ^/(?<!sandbox|Projects|WebDev)+(/.*)>
    订单拒绝,允许
    拒绝一切
</目录>

但它给出了 500 错误。

4

2 回答 2

5

这是tested您想要的正确方式RegEx

我建议您在 Apache 配置文件本身中使用它,而不是在.htaccess其中,因为它可能无法在某些默认操作系统的 Apache 配置(例如 Ubuntu)上正常工作,除非您更正其他相关配置以使其在其中工作.htaccess(即AllowOverride.. 等)

    <Directory />
            Order allow,deny
            deny from all
    </Directory>
    <Directory ~ "/(sandbox|Projects|WebDev)">
            Order allow,deny
            allow from all
    </Directory>

是的,这是一个OLD问题,但这个答案可能会对某人有所帮助.. :-)

于 2014-05-27T00:16:23.283 回答
2

规范的方式是这样的:

<Directory />
    Order Deny,Allow
    Deny from all
</Directory>

<Directory /sandbox>
    Order Deny,Allow
    Allow from all
</Directory>

<Directory /WebDev>
    Order Deny,Allow
    Allow from all
</Directory>

<Directory /Projects>
    Order Deny,Allow
    Allow from all
</Directory>
于 2009-07-02T22:51:09.980 回答