PHPで特定のサイトからのリクエストのみ受け付けて処理する方法
2024/04/16
指定したサイトからのリクエストのみ受け付けて処理したいという状況があった。その他のサイトからリクエストが来たり、URLを直に叩いた場合は処理はしたくない。調べてみるとリファラ取得するのが簡単そう。以下に対応方法をメモ。
対応方法
<?php if( strpos($_SERVER['HTTP_REFERER'], 'hogehoge.com') === false ){ //処理しない。 } else { //処理する。 }
上記ソースコードだとhogehoge.comから来た場合のみ処理するという形になる。
ただリファラの偽装とかも出来るみたいなので信頼性は高くない点に留意すること。
関連記事
-
-
PHPからRedisを利用する際のよく使う構文について
PHPからRedisを利用する際のよく使う構文について以下にメモ。 ...
-
-
Smartyでテンプレートファイル(tplファイル)を編集しても反映されない
Smartyで作成されたシステムがあり、一部修正でtplファイルを編集したものの ...
-
-
$_SERVER['PHP_SELF']に脆弱性あり
formのaction属性とかページングのリンクとかで、 <form ac ...
-
-
フォルダにリンク制限をかける
imgというフォルダがあり、直接URLを叩いても 中身を見られないけど、同一サー ...
-
-
smart_resize_imageで縦横の比率関係なく、固定リサイズ
PHPで縦横どちらかが指定の長さを超えた場合、比率を保ったままリサイズで使ったs ...