0

我想允许访问特定域。例如,如果 domain 包含单词 asdf 它应该允许访问。问之前我最后的尝试是:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^.*asdf.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} !^.*1234.*$
#RewriteRule .* - [F]

所以在这里我试图限制对除包含 asdf 或 1234 的域之外的所有域的访问。

4

2 回答 2

0

您需要%{HTTP_HOST}用于检查 URL 中的域,而不是%{HTTP_REFERER}.

你可以试试这个代码:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^.*(asdf|1234)\. [NC]
RewriteRule .* - [F]
于 2012-12-20T19:23:22.487 回答
0

Anubhava 给了我一个线索,但不是 http_host。最后的问题是 OR。现在下面的工作就像一个魅力:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^.*(1234|asdf).* [NC]
RewriteRule .* - [F]

所以 HTTP_REFERER 做了它应该做的(检查域访问)。和 | 作为我需要的 or 论点。

于 2012-12-20T20:05:25.160 回答