押入れ起業

ガレージベンチャー、ならぬ。サボっていましたが再開します。

PHPでリファラ(参照元)をチェックするのはこれでいいの?

      2015/04/08

あるサイトでのページでフォーム入力し、そのサイト内の別ページへポストして結果を表示したい。ただし別サイトからのポストはなるべく防ぎたい。

リファラをチェックして、何もなければ見逃してやる。リファラがある場合、それが他サイトだったらアウト。

これでいいんだろうか。

if( isset( $_SERVER['HTTP_REFERER'] ) ){
	//もしリファラがある場合
	$parse_referer = parse_url( $_SERVER['HTTP_REFERER'] );
	if ( strcmp ($parse_referer['host'], $_SERVER['HTTP_HOST'] ) !==0 ){
	//リファラとHTTP_HOSTを比較して異なった場合はアウト
	die("アウト!");
	}
}

die()を以下に書き換え。example.com/post.php に記述し、別サイトから直接来たアクセスを example.com のトップへ転送することを想定。

	header('Location: http://'. $_SERVER['HTTP_HOST'] );
	exit;

 - PHP

応援クリックお願いします:

PC

PC

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

PHP
ヒアドキュメントに気をつけろ!なぜかエラーが出る場合…

ヒアドキュメントを使ってみたら何故か意味不明な、異常に長いエラーが出たぜ。 Pa …

PHP
ImageTTFTextで同じフォントを使ってもサーバによって文字サイズやアンチエイリアスが違う…

全く同じスクリプトと同じIPA明朝フォントファイルを使い、サーバーだけ変えてIm …

PHP
PHPでxmlデータを取得する

simplexml_load_file($url); – XMLファ …

daterss
アクセスした日時を返すだけのRSSウェブサービスを作った

電脳ウェブサービスをやると言って、んでいよいよhtmlへはめ込む段階で今度はBo …

piwik
PHP/MySQLで動くオープンソースのアクセスログ解析「Piwik」の素晴らしい点

先日ちょろっと書いたけど、Piwikというアクセス解析のPHPスクリプトが実にい …

PHP
‘http://’. $_SERVER[‘HTTP_HOST’]; も header(‘Location: ./’);相対指定もやってはいけない事だった

$_SERVER[‘HTTP_HOST’]でリンク先を作 …

piwik
Piwikの手動アップデート

少し前からPiwikのアップデートが来ていたのだけれど、いつもどおり自動アップデ …

PHP
PDOでSQLiteの研究(1)

最近は電脳卸の研究が止まっているが、いろいろ忙しく。でもやりたい事はいろいろある …

XAMPP
XAMPPのPHPとさくらのレンタルサーバー・ライトでImageMagick/imagickがやっと動いたのでメモ

XAMPPのPHPでImageMagick/imagickが動いたやりかた いろ …

PHP
MagpieRSSの使い方を自分のためにメモ

今更だけど、MagpieRSSの使い方を再確認。 Magpie RSS &#82 …