PHP によって処理された外部 JavaScript をロードする Web ページがあります。Chrome と Firefox で、PHP を介して js ファイルのイニシエーターを取得したい場合は、スーパーグローバル変数で取得するだけです$_SERVER["HTTP_REFERER"]
。ただし、この Web ページを閲覧する前に別の Web ページにアクセスした場合、これは IE では機能しません。IE でもイニシエータ Web ページを取得するにはどうすればよいですか?
1 に答える
1
PHP は JavaScript を処理していません。お使いのブラウザは JavaScript を処理しています。
HTTP ヘッダーは信頼できないことが知られており、誰もが要求でフィールドを好きなように変更できます。$_SERVER["HTTP_REFERER"]
JavaScript 関連で noを使用しても問題を解決することはできません。一部のブラウザはリファラーをオフにしているか、オフにする可能性を提供しています。アドオンによってはリファラーも削除されるからです。
信頼できる唯一の方法は、JavaScript 呼び出しごとに 1 回だけ使用するセキュリティ トークンを生成することです。それをセッションに保存し、html/php を呼び出すときと js/php を呼び出すときを比較します。
于 2013-10-17T09:27:59.157 に答える