ホームページ >バックエンド開発 >PHPチュートリアル >$_SERVER['HTTPS'] に依存せずに HTTPS の使用を確実に検出するにはどうすればよいですか?
$_SERVER['HTTPS'] を使用せずに HTTPS の使用状況を確認する代替方法
HTTPS 接続を検証する従来のアプローチには、$ の値のチェックが含まれます_SERVER['HTTPS']。ただし、特定のサーバー構成では、この変数が定義されていない可能性があり、エラーが発生します。
解決策
この問題に対処するために、次の関数は信頼できる代替手段を提供します。 HTTPS 接続の決定:
function isSecure() { return (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') || $_SERVER['SERVER_PORT'] == 443; }
互換性と説明
ロード バランサーに関する注意事項
このコードは、ロード バランサーが存在する場合にのみ、サーバーとロード バランサー間の接続をテストします。クライアントとロードバランサー間の接続をテストするには、HTTP_X_FORWARDED_PROTO ヘッダーを利用する必要がありますが、このアプローチはより複雑です。
以上が$_SERVER['HTTPS'] に依存せずに HTTPS の使用を確実に検出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。