PHP でマスクの変更を含む完全な URL を取得する方法
動的 Web サイトを作成する場合、完全な URL にアクセスすることが重要ですユーザーが Web ブラウザに表示するもの。ただし、.htaccess では URL マスクが使用されているため、$_SERVER['PHP_SELF'] のような従来の方法が常に十分であるとは限りません。この問題を解決するために、$_SERVER['REQUEST_URI'] は包括的なソリューションを提供します。
$_SERVER['REQUEST_URI'] を使用する
完全な URL をそのまま取得するにはアドレスバーに表示される場合は、次のコードを使用します:
$actual_link = "https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
このコード$_SERVER['HTTP_HOST'] と $_SERVER['REQUEST_URI'] を組み合わせて、パスとクエリ文字列を保持します。 .htaccess に適用されたマスク変更を含む完全な URL を効果的に生成します。
プロトコルを含めた HTTP および HTTPS のサポート
HTTP と HTTPS プロトコルの両方を確実にサポートするため、コードを次のように変更します:
$actual_link = (empty($_SERVER['HTTPS']) ? 'http' : 'https') . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
この更新されたコードは、 $_SERVER['HTTPS'] 値を取得し、その存在に基づいて適切なプロトコルを追加します。
セキュリティに関する考慮事項
これらの手法は次のようなセキュリティ リスクを引き起こす可能性があることに注意することが重要です。 HTTP_HOST および REQUEST_URI は、クライアントまたはサーバーによって操作できます。セキュリティ関連のシナリオでこれらの値を使用する前に、適切な入力検証とサニタイズが不可欠です。
以上がPHP で .htaccess の変更を含む完全な URL を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。