Maison > développement back-end > tutoriel php > Comment obtenir l'URL complète, y compris les modifications .htaccess, en PHP ?

Comment obtenir l'URL complète, y compris les modifications .htaccess, en PHP ?

DDD
Libérer: 2024-12-26 06:53:17
original
901 Les gens l'ont consulté

How to Get the Complete URL, Including .htaccess Modifications, in PHP?

Comment récupérer l'URL complète, y compris les modifications de masque, en PHP

Lors de la création d'un site Web dynamique, il est crucial d'accéder à l'URL complète que les utilisateurs voient dans leurs navigateurs Web. Cependant, les méthodes traditionnelles comme $_SERVER['PHP_SELF'] peuvent ne pas toujours suffire en raison de l'utilisation de masques d'URL dans .htaccess. Pour résoudre ce problème, $_SERVER['REQUEST_URI'] fournit une solution complète.

Utiliser $_SERVER['REQUEST_URI']

Pour obtenir l'URL complète telle qu'elle apparaît dans la barre d'adresse, utilisez le code suivant :

$actual_link = "https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
Copier après la connexion

Ce code combine $_SERVER['HTTP_HOST'] avec $_SERVER['REQUEST_URI'], qui contient le chemin et la chaîne de requête. Il génère efficacement l'URL complète, y compris toutes les modifications de masque appliquées dans .htaccess.

Prise en charge de HTTP et HTTPS avec inclusion de protocole

Pour garantir la prise en charge des protocoles HTTP et HTTPS , modifiez le code comme suit :

$actual_link = (empty($_SERVER['HTTPS']) ? 'http' : 'https') . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
Copier après la connexion

Ce code mis à jour vérifie la valeur $_SERVER['HTTPS'] et ajoute le protocole en fonction de sa présence.

Considérations de sécurité

Il est important de noter que ces techniques peuvent présenter des risques de sécurité car HTTP_HOST et REQUEST_URI peuvent être manipulés par le client ou le serveur. Une validation et une désinfection appropriées des entrées sont essentielles avant d'utiliser ces valeurs dans tout scénario lié à la sécurité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal