私は私のウェブサイトからAJAX呼び出しを処理するために使用するservice.phpクラスを持っています。 PHP CURLを使用して他の人がサービスにアクセスするのを防ぐため、私は通常、リクエストがmysiteから来ているかどうかを確認し、そうでなければ私のホームページにリダイレクトします。サービスファイルへのリクエストが私のウェブサイトから来たことを確実に確認する方法はありますか?
if($_SERVER['HTTP_REFERER'] != "http://www.mysite.com"){
header('location: http://www.mysite.com');
exit;
}
私はPHP聖書で読む:
「すべてのユーザーエージェントがこれを設定し、一部はする能力を提供しないようにつまり、HTTP_REFERERをフィーチャとして変更してください。つまり、実際には信頼できません。
この方法が信頼できない場合、私の質問は、サービスファイルへのリクエストが私のウェブサイトから来たことを確実にどのように確認できますか?
ご協力いただきありがとうございます!
答えが簡単です:あなた**できません。たとえ仲間の泥棒をしばらく止めたとしても、彼はここでスタックオーバーフローに出て、それを避ける方法を完全に正確に取得します。 –
「woot586」が彼の秘密をここに掲載しない限り、彼はうまくいくと思う? – Nanne
また、noobの開発者は、あなたのウェブサイト**からではなく**クライアントのコンピュータ**からリクエストが来ていることを理解することが非常に重要です。 –