質問: mod_rewrite で悩んでいます。 「HTTP_REFERER がない場合」という条件設定を行いたいとき、 RewriteCond %{HTTP_REFERER} !.+ では正しく判断されるのに、 RewriteCond %{HTTP_REFERER} ^$ では無視されてしまいます。 また、「HTTP_REFERER が 〓 の場合」という条件設定を行いたいとき、 RewriteCond %{HTTP_REFERER} ^*$ RewriteCond %{HTTP_REFERER} ^ RewriteCond %{HTTP_REFERER} .*hoge.* RewriteCond %{HTTP_REFERER} hoge RewriteCond %{HTTP_REFERER} .+ どの表現でも無視されてしまいます。 いったい何が悪いのでしょうか? サーバは Apache 2.0 です。
回答: http://www.preston-net.com/wiki/index.php?%5B%5B%C4%BE%A5%EA%A5%... Preston Wiki - 直リンク禁止設定 画像などの直リンクを禁止させたいのですよね。 これでいかがでしょ。 RewriteCond %{HTTP_REFERER} !^$ [NC] RewriteCond %{HTTP_REFERER} !^*$ [NC]