ホームページ >バックエンド開発 >PHPチュートリアル >.htaccess とセキュリティを考慮して、PHP でブラウザに表示される完全な URL を取得するにはどうすればよいですか?

.htaccess とセキュリティを考慮して、PHP でブラウザに表示される完全な URL を取得するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-24 21:24:51987ブラウズ

How Can I Get the Complete, Browser-Displayed URL in PHP, Accounting for .htaccess and Security?

PHP で完全な URL を取得する

コード スニペット $actual_link = 'http://' を使用して完全な URL を取得しようとする場合.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];、次のような制限に直面します。 .htaccess マスキング。返される URL は、ブラウザのナビゲーション バーに表示される URL を正確に反映していない可能性があります。

ブラウザに表示される正確な URL を取得するには、$_SERVER['REQUEST_URI'] 変数を利用します。次のコードは、その使用法を示しています。

$actual_link = "https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

HTTP プロトコルと HTTPS プロトコルの両方にわたる柔軟性を得るには、次のコードを使用します。

$actual_link = (empty($_SERVER['HTTPS']) ? 'http' : 'https') . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

セキュリティに関する考慮事項

このコードにはセキュリティ上の影響があることに注意することが重要です。クライアントとサーバーは、HTTP_HOST と REQUEST_URI を任意の値に変更できます。これらの値がセキュリティ コンテキスト (CWE-20) で悪用されるのを防ぐには、適切なサニタイズと入力検証が重要です。

以上が.htaccess とセキュリティを考慮して、PHP でブラウザに表示される完全な URL を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。