web-dev-qa-db-fra.com

Apache par répertoire d'utilisateur introuvable

Pour une raison quelconque, le répertoire utilisateur que j'ai pour mon serveur a cessé de fonctionner à chaque fois que je vais sur http://server/~user/public_html/ je reçois une erreur 404. Les fichiers sont là sur le ftp, mais ils ne s'affichent pas à partir du Web.

C'est étrange car cela fonctionnait il y a peu de temps.

De l'aide?

1
GuyNoir

Seriez-vous en mesure de publier une partie de votre httpd.conf (ou une configuration incluse si elle est divisée en plusieurs fichiers)?

À l’intérieur de celle-ci, se trouve la section de configuration "par utilisateur", qui définit le répertoire que les serveurs recherchent au domicile de l’utilisateur.

Par exemple, voici la valeur par défaut de mes serveurs Apache:

  # Turn on userdirs
  <IfModule mod_userdir.c>
    UserDir public_html

    <Directory /home/*/public_html>
      Order allow,deny
      Allow from all
    </Directory>
  </IfModule>

Dans ce cas, tant qu'un utilisateur possède un répertoire public_html, avec des autorisations de 0711 (ou au moins 0755), les bits de lecture et d'exécution de public_html doivent être définis, ainsi qu'au moins l'exécution de leur répertoire de départ. Apache servira les fichiers. avec les autorisations appropriées.

Une autre question, à partir de votre URL ci-dessus de "serveur/~ utilisateur/public_html /" - avez-vous téléchargé les fichiers dans le répertoire public_html/public_html? Sinon, vous devriez simplement laisser tomber la partie "public_html" à la fin, car Apache regardera automatiquement là-dessous.

Cela rendrait l'URL http://server/~user/ et devrait fonctionner, sauf si votre serveur a une configuration non standard.

Si rien de ce qui précède ne fonctionne, vérifiez si les index de répertoire sont activés et supprimez tous les fichiers d'index de votre public_html; cela devrait vous donner une liste de tous les fichiers, pour vérifier la structure!

2
Absolute

Vérifiez les autorisations sur le répertoire, la propriété du répertoire et les processus utilisateur Apache exécutés sous pour vous assurer que le répertoire est à la fois lisible et exécutable par Apache.

1
danlefree