[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:40596] SetEnvIf が機能しない



下野と申します。

現在WWWサーバを運用しています。
そこで、特定のディレクトリにアクセスするのに特定のディレクトリの
リンクからのみ許可をする、という設定をしようとしたのですが、うま
く行きません。

具体的には httpd.conf に下記の記述をしました。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<Directory /var/www/hoge>
SetEnvIf Referer "^133\.xxx\.xxx\.xxx" hoge_ok
Order Deny,Allow
Deny from all
Allow from env=hoge_ok
</Directory>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−

上記の設定をして、apachectl restart して
http://133.xxx.xxx.xxx/link.html  
   (※link.htmlはhogeディレクトリへのリンクが張ってあるファイルです。)
にブラウズして、hogeディレクトリへのリンクをクリックすると、
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Forbidden
You don't have permission to access /limit/index.html on this server.

Apache/1.3.26 Server at penguin Port 80
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
とエラーになってしまいます。

ちなみに
Allow from env=hoge_ok の行を
Allow from xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxxはIPアドレスです)
とすると、xxx.xxx.xxx.xxxのIPアドレスからのみアクセス可能になるので、
−−−−−−−−
Order Deny,Allow
Deny from all
Allow from
−−−−−−−−
の部分は正常に機能していると思われます。
SetEnvIf Referer "^133\.xxx\.xxx\.xxx" hoge_ok の行が機能していないため
最後の行のAllow from env=hoge_ok の行が機能せず、アクセスが禁止されてし
まっているようなのです。

何か記述の仕方が悪いのだと思うのですが、何をどうすれば良いのかわかりません。

なお、httpd.conf に記述した内容を/var/www/hogeの.htaccessに書いてみましたが
結果は同様でした。

間違っている部分と修正方法について、ご指示頂きたいのでよろしくお願いします。


********************************************
 有限会社 ナレッジ プロダクツ
 下野 兼揮
 〒503-0807 岐阜県大垣市今宿6−52−16
 ソフトピアジャパン ドリーム・コア215
 TEL:0584-74-8297
 FAX:0584-74-8298
 e-mail:shimono@xxxxxxxxxxxxxxxx
 URL:http://www.k-products.co.jp
********************************************