Maison > développement back-end > tutoriel php > Comment puis-je obtenir l'URL complète affichée par le navigateur en PHP, en tenant compte du .htaccess et de la sécurité ?

Comment puis-je obtenir l'URL complète affichée par le navigateur en PHP, en tenant compte du .htaccess et de la sécurité ?

Linda Hamilton
Libérer: 2024-12-24 21:24:51
original
994 Les gens l'ont consulté

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

Obtenir l'URL complète en PHP

Lors de la tentative de récupération de l'URL complète à l'aide de l'extrait de code $actual_link = 'http://' .$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];, on est confronté à une limitation due au masquage .htaccess. L'URL renvoyée peut ne pas refléter fidèlement l'URL affichée dans la barre de navigation du navigateur.

Pour obtenir l'URL exacte telle qu'elle apparaît dans le navigateur, utilisez la variable $_SERVER['REQUEST_URI']. Le code suivant illustre son utilisation :

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

Pour plus de flexibilité entre les protocoles HTTP et HTTPS, utilisez le code suivant :

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

Considérations de sécurité

Il est important de noter que ce code a des implications en matière de sécurité. Le client et le serveur peuvent modifier HTTP_HOST et REQUEST_URI en valeurs arbitraires. Une désinfection et une validation des entrées adéquates sont cruciales pour empêcher que ces valeurs ne soient exploitées dans des contextes de sécurité (CWE-20).

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal