押入れ起業

ガレージベンチャー、ならぬ。もっぱら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

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

関連記事

さくらのレンタルサーバー

phpinfo()のdate項目、phpスクリプト中のdate()関数にwarning警告が出た(さくらのレンタルサーバー)

さくらのレンタルサーバで、phpinfo()表示やdate()関数を使っていたら警告が表示されていて不安になった。 Warning: phpinfo(): It is not safe to rely …

PHP

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

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

PHP

PDOでSQLiteの研究(1)

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

PHP

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

今更だけど、MagpieRSSの使い方を再確認。 Magpie RSS – PHP RSS Parser MagpieRSS provides an XML-based (expat) R …

PHP

PHPで画像に文字列を描画する関数 imagefttext、描画する文字列の描画サイズを取得する関数 imagettfbbox

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

open all | close all
open all | close all