掲示板への直リンクを防ぐには?
まーくん
[E-Mail]
1999/07/04(日) 00:35:37
掲示板へのアクセスを、特定のurl(自分のページ)から以外禁止したいのですが、
どうすればよいでしょうか?
掲示板のcgiでリンク元(REFER?)をチェックすれば出来る、とお聞きしたのですが、
私の技術では出来ませんでした。(~_~)
どうかアドバイスをお願いいたします。m(__)m
gama
[E-Mail]
[HomePage]
1999/07/04(日) 00:47:42
掲示板の cgi で参照元をチェックすれば出来るとおもいます。
環境変数 HTTP_REFERER です。
Perl では
$ENV{'HTTP_REFERER'}
で参照できます。
まーくん
[E-Mail]
1999/07/04(日) 01:35:30
[[解決]]
gamaさん、やまさん
アドバイスありがとうございます。
早速変更してみたところ、意図通りに動いてくれました。
重ねてお礼申し上げます。
ありがとうございました。m(__)m
まーくん
[E-Mail]
1999/07/04(日) 11:33:27
大変です!
チェックしていて気づいたのですが、これだと書き込みが出来ません。
送信ボタンを押すと弾かれてしまいます。(T-T)
どう対処したらよいでしょうか?
掲示板は、プロバイダが用意した物です。
ソースを見てみると、ネットサーフレスキューさんのMiniBBS v7.93のようです。
誠に申し訳ございませんが、救援お願いいたします。m(__)m
zizz...
[HomePage]
1999/07/04(日) 12:07:10
HTTP_REFERER でどこから辿って来たのかチェックするのはやめておいた方が良いです。
Internet Explorer, Lynx, Emacs-W3などは前に表示していたページのURLを
そのままRefererに載せてくるようです。
そのページからリンクされているか関係なく。
だから、Referer に入っているURLのページからリンクされているとは限りません。
以前、逆リンクのリストをPerlで自動作成しようと
サーバーのログに残っているRefererの値を取り出したのですが、
関係ないページが多すぎて諦めたことがあります。
これと基本的に同じです。
まーくん
[E-Mail]
1999/07/04(日) 16:59:26
あらら・・・、それではこの方法ではダメなのですね・・・。(~_~)
何かいい方法はないかしら・・・。
P.S.
おっしゃっている通り、リロードの際にREFERERが掲示板自らになるのが問題のようです。
と言うことで、今までの方法で、
チェックurlに掲示板も追加したらとりあえずは大丈夫かな? と、思うのですがどうでしょうか?
もしOKなようでしたら、どのようにして記述したらよいのでしょうか?
$url='
http://www.abcd.ne.jp/efgh/,hrrp://www.abcd.ne.jp/efgh/bbs.cgi';
と記述してもうまくいきませんでした・・・。
まーくん
[E-Mail]
1999/07/05(月) 00:29:49
B-Cusさん ありがとうございます。
ですが、変更後は全て弾かれるようになってしまいました・・・。(T-T)
urlの記述が悪いのでしょうか・・・。
B-Cus
1999/07/05(月) 00:34:43
まずは、print文だけを埋め込んで、どこでどういうREFERERが送られているか
確認してください。あと、大文字小文字が違ってもはじかないようにすると
いいかもね。
まーくん
[E-Mail]
1999/07/06(火) 01:48:03
> まずは、print文だけを埋め込んで、どこでどういうREFERERが送られているか確認してください。
> あと、大文字小文字が違ってもはじかないようにするといいかもね。
申し訳ございません。m(__)m
どのような操作をすれば良いのかわかりません・・・。
はじめの、やま さんのソースの時はOKだったurlがB-CusさんのソースだとNGと言うことはあるのでしょうか?
それとも、私の記述が間違っているのでしょうか・・・。
オケアノス
[E-Mail]
[HomePage]
1999/07/06(火) 03:37:55
実際に確かめたわけではないのですが、チェックが2回だけなら
$url1 = '(リンク元)';
$url2 = '(掲示板)';
if ($ENV{'HTTP_REFERER'} !~ /$url1/ && $ENV{'HTTP_REFERER'} !~ /$url2/)
{
(弾く処理);
}
こんなので問題ないよーな気もします。
もうちょっと頑張れば綺麗にまとまると思いますが、
あまりひねると自分でも分からなくなったりします(そんなのは私だけか・・)
まーくん
[E-Mail]
1999/07/07(水) 00:28:15
あ、なるほど。
C言語と同じような記述が出来るのですね。
早速試してみたいと思います。