htaccess阻止访问,但某些文件夹除外

时间:2018-09-16 23:51:50

标签: apache .htaccess redirect mod-rewrite

有一个公司网站,该公司已关闭,并且除特定IP之外,所有对该网站的访问都被阻止。来自其他IP的所有其他请求将被重定向。

我需要允许访问所有IP的几个特定文件夹。

因此,原始重定向部分很简单:

    RewriteCond %{REMOTE_ADDR} !^123.45.67.89$
    RewriteRule !^news$ ./news.html [L]

所以我在目录中添加了几行...

    RewriteCond %{REQUEST_URI} !^folder1$
    RewriteCond %{REQUEST_URI} !^folder2$
    RewriteCond %{REMOTE_ADDR} !^123.45.67.89$
    RewriteRule !^news$ ./news.html [L]

就目前的情况而言,我应该理解为应该执行“ AND”,所有这些条件都必须为真才能处理重写规则。我迷路了。它不起作用,我研究了一个变种,但无济于事。

我在这里做错了什么?我需要人们能够从任何IP访问folder1和folder2。我需要任何人访问该网站的任何其他部分,而无需重定向特定的IP。

任何帮助将不胜感激,谢谢。

1 个答案:

答案 0 :(得分:0)

我通过以下方式实现了自己的目标:

RewriteCond %{REQUEST_URI}  !(folder1|folder2|folder3) [NC]
RewriteCond %{REMOTE_ADDR} !^123.45.67.89$
RewriteRule !^news$ news.html [L]