Maison >développement back-end >tutoriel php >Comment puis-je obtenir l'URL complète en PHP, même avec des URL masquées ?

Comment puis-je obtenir l'URL complète en PHP, même avec des URL masquées ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-26 15:19:10889parcourir

How Can I Get the Full URL in PHP, Even with Masked URLs?

Détermination de l'URL complète en PHP

Lorsqu'il s'agit d'URL masquées, l'approche courante consistant à utiliser $_SERVER['HTTP_HOST'] et $ _SERVER['PHP_SELF'] peut ne pas suffire à obtenir l'URL complète présentée dans la barre de navigation du navigateur. Pour résoudre ce problème et récupérer avec précision l'URL affichée, pensez à utiliser ce qui suit :

La variable $_SERVER['REQUEST_URI'] fournit le chemin complet de l'URI demandé, quel que soit le masquage .htaccess. Pour construire une URL valide, concaténez simplement les éléments suivants :

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

Notez que l'utilisation de guillemets doubles est cruciale pour définir correctement la chaîne.

Pour les sites Web prenant en charge les connexions HTTP et HTTPS, utilisez ce qui suit :

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

Considérations de sécurité

Il est essentiel de soulignent les risques de sécurité potentiels associés au recours à $_SERVER['HTTP_HOST'] et $_SERVER['REQUEST_URI'], car des acteurs malveillants peuvent exploiter ces variables. Par conséquent, il est impératif de mettre en œuvre des mesures appropriées de validation et de désinfection des entrées pour atténuer ces risques et garantir l'intégrité de votre application Web.

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!

Déclaration:
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