PHPで特定のサイトからのリクエストのみ受け付けて処理する方法
2024/04/16
指定したサイトからのリクエストのみ受け付けて処理したいという状況があった。その他のサイトからリクエストが来たり、URLを直に叩いた場合は処理はしたくない。調べてみるとリファラ取得するのが簡単そう。以下に対応方法をメモ。
対応方法
<?php
if( strpos($_SERVER['HTTP_REFERER'], 'hogehoge.com') === false ){
//処理しない。
} else {
//処理する。
}
上記ソースコードだとhogehoge.comから来た場合のみ処理するという形になる。
ただリファラの偽装とかも出来るみたいなので信頼性は高くない点に留意すること。
関連記事
-
-
MySQLとPHPの「image-comparator」ライブラリを使用して類似画像検索を実装する方法
先日PHPで画像を比較して類似度を算出する「image-comparator」ラ ...
-
-
CodeIgniter4で独自の404ページを表示する方法
CodeIgniter4にて存在しないページをブラウザから開くと、デフォルトの状 ...
-
-
PHPにてSession発行時に保存されるCookieに対してHttpOnly / Secure属性を設定する方法
先日PHPのsetcookie実行時にHttpOnly / Secure属性を設 ...
-
-
PHP8系で「Warning: Attempt to read property "xxxxxx" 」エラーの対応方法
PHP8系&WordPress6.4.3で「Warning: Attem ...
-
-
Shift_JISでカタカナのソを出力するとエラー
先に結論として5C問題とかいうみたいで仕様らしい。 ■参考サイト http:// ...