押入れ起業

ガレージベンチャー、ならぬ。もっぱら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で画像に文字列を描画する関数 imagefttext、描画する文字列の描画サイズを取得する関数 imagettfbbox

言いたいことはタイトルの通り。 imagefttext という関数を使うと画像に文字列を書き込むことができるが、文字数が同じでも文字の半角/全角さらにはフォントによって描画後のサイズは異なる。たいてい …

piwik

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

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

PHP

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

$_SERVER[‘HTTP_HOST’]でリンク先を作るのも、header(‘Location:~’);のアドレス相対指定転送も、やってはいけないこと …

PHP

PDOでSQLiteの研究(1)

最近は電脳卸の研究が止まっているが、いろいろ忙しく。でもやりたい事はいろいろあるので、調べるだけは調べるのだ。 SQLite入門 【PHP】PDO関数でSQLiteを使ってみた(1) 【PHP】PDO …

PHP

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

全く同じスクリプトと同じIPA明朝フォントファイルを使い、サーバーだけ変えてImageTTFTextで画像にテキストを書き出した。 結果、サーバによって文字サイズやアンチエイリアスのかかり具合に違いが …

open all | close all
open all | close all