押入れ起業

ガレージベンチャー、ならぬ。もっぱらPHPプログラミングとアフィリエイトの研究をしています。

PHP

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

投稿日:2015-03-21 更新日:

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

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

これでいいんだろうか。

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;

PC

PC

-PHP

執筆者:


comment

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

関連記事

PHP

PHPでURLクエリのパラメータを連想配列にする/連想配列からURLクエリを作る

URLクエリのパラメータを連想配列にする parse_str – 文字列を処理し、変数に代入する 連想配列からURLクエリを作る http_build_query – URL …

piwik

PHP/MySQLで動くオープンソースのアクセスログ解析「Piwik」を削除した

PHP/MySQLで動くオープンソースのアクセスログ解析「Piwik」を削除した。アクセスログが溜まりすぎたからだ。 元々Piwikを導入したのは、(1)外部のアクセス解析サービスを使うとその重さに引 …

PHP

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

ヒアドキュメントを使ってみたら何故か意味不明な、異常に長いエラーが出たぜ。 //エラーになるヒアドキュメント $example = <<< EOF あいうえお kakikukeko …

XAMPP

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

XAMPPのPHPでImageMagick/imagickが動いたやりかた いろいろ失敗しつづけて3日間、XAMPPのPHPでImageMagick/imagickがやっと動いた。ImageMagic …

piwik

Piwikの手動アップデート

少し前からPiwikのアップデートが来ていたのだけれど、いつもどおり自動アップデートをしようとするとエラーが出たので更にアップデートが来るかもと思い放置していた。 curl_exec: Unknown …

open all | close all
open all | close all