J'ai un vhost configuré pour sd.example.com. DocumentRoot est htdocs/sd. La navigation vers sd.example.com fonctionne comme prévu. Mais si je navigue sur sd.example.com/sd, j'obtiens le même résultat.
S'agit-il d'un comportement attendu, et si oui, comment le désactiver? J'aurais pensé que sd.example.com/sd essaierait de charger htdocs/sd/sd, ce qui devrait donner 404.
Heureux de poster mes confs vhost si ce n'est pas prévu.
Tout d'abord, assurez-vous de ne pas avoir accidentellement copié "sd" directement dans un autre "sd", car cela se produit plus souvent qu'on ne le pense. Cela pourrait être un bon moment pour vérifier si vous avez un lien symbolique vers le répertoire parent.
Vérifiez également si sd.example.com/asedfasdfasd renvoie une erreur ou la même chose que sd.example.com
Si possible, veuillez publier votre configuration d'hôte virtuel et pouvez-vous confirmer que sd.example.com/sd charge la page dans ce sous-répertoire ou qu'il redirige vers sd.example.com
- J'écrirais ceci comme un commentaire mais je n'ai pas assez de représentants pour le faire.
htdocs
est généralement la racine du document pour votre domaine principal example.com
. Je suppose que vous avez mal tapé votre exemple et qu'il s'agit en fait de example.com/sd
qui vous donne le même résultat que le sous-domaine. Il n'est pas conseillé de créer des sous-répertoires de celui-ci pour héberger des sous-domaines. Au lieu de cela, vous devez utiliser une racine de document complètement différente. Par exemple, je crée des répertoires comme celui-ci sur mon serveur pour diverses racines de document:
/var/www/example.com/
/var/www/sd.example.com/
/var/www/www.example.net/
De cette façon, aucun des sous-domaines n'est imbriqué dans un autre domaine. Tout fonctionne mieux.
Malheureusement, sur l'hébergement mutualisé, vous n'avez peut-être pas le luxe de gérer soigneusement la structure de votre répertoire et les racines des documents. L'interface d'hébergement partagé cPanel a la mauvaise habitude d'héberger le domaine principal dans un répertoire et de créer des sous-répertoires pour les sous-domaines et les domaines complémentaires. Dans ce cas, vous devez mettre du code dans le .htaccess
du domaine principal pour empêcher l'accès au sous-répertoire.
Redirect permanent /sd/ http://sd.example.com/
Redirect permanent /sd http://sd.example.com/