Maison >développement back-end >tutoriel php >Comment puis-je obtenir l'URL de base de mon site Web en utilisant PHP ?

Comment puis-je obtenir l'URL de base de mon site Web en utilisant PHP ?

DDD
DDDoriginal
2024-12-03 13:40:14537parcourir

How Can I Get My Website's Base URL Using PHP?

Acquérir l'URL de base avec PHP

Naviguer dans la structure d'URL de votre site Web est un aspect essentiel du développement PHP. Une exigence courante consiste à obtenir l'URL de base, qui identifie le répertoire racine de votre site Web.

Solution :

Pour récupérer l'URL de base en PHP, utilisez le code suivant :

echo "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];

Cette approche fusionne le nom de domaine actuel ($_SERVER['SERVER_NAME']) avec le chemin demandé ($_SERVER['REQUEST_URI']) pour fournir l'URL de base complète.

Compatibilité HTTPS :

Si votre site Web utilise HTTPS, utilisez la fonction suivante :

function url(){
  return sprintf(
    "%s://%s%s",
    isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off' ? 'https' : 'http',
    $_SERVER['SERVER_NAME'],
    $_SERVER['REQUEST_URI']
  );
}

echo url();
#=> http://127.0.0.1/foo

Configuration d'Apache :

Pour assurer des résultats précis, vérifiez que votre serveur Apache est configuré correctement :

<VirtualHost *>
    ServerName example.com
    UseCanonicalName on
</VirtualHost>

Considérations :

Lorsque vous vous fiez à la clé HTTP_HOST, qui contient les entrées de l'utilisateur, soyez vigilant nettoyer et supprimer tous les caractères invalides qui pourraient compromettre l'intégrité de l'URL. Utilisez la fonction parse_url pour vous guider.

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