Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 16/02/2014, à 16:41

Moem

Configuration Apache avec 2 sites : NOT FOUND

Bonjour à tous,

J'ai un serveur et ce serveur doit contenir deux sites. Un site est rattaché à un nom de domaine (site1), et un site doit être accessible via l'IP de mon serveur de telle sort : x.x.x.x/~site2/.

L'arborescence de mes sites est la suivante :

/home/
* site1
** www
*** liste des fichiers & dossiers
* site2
** www/
*** divers fichiers
*** www/
**** liste des fichiers & dossiers

Pour accéder au site2, je tape donc x.x.x.x/~site2/www/ pour accéder au dossier www/ qui est lui-même contenu dans le dossier www/. Ca fonctionne bien, j'arrive sur la page d'index.
Seulement, lorsque je clique sur un lien de mon site2, je tombe sur une 404. Par exemple, lorsque je souhaite accéder à x.x.x.x/~site2/www/news/, l'erreur suivante apparaît :

The requested URL /home/site2/www/www/index.php was not found on this server.

Il y a une règle de réécriture dans mon htaccess qui dit bien qu'il faut passer par la page index.php pour pouvoir accéder à x.x.x.x/~site2/www/news/, or ça me dit que la page index.php est introuvable. Mais la page index.php est pourtant bien accessible en temps normal, puisque l'index de mon site fonctionne.
Petite note, tout fonctionne très bien sur mon site1, et un système similaire est mis en place pour les URL.

Je suis allé voir du côté des logs d'Apache, et voici ce que /var/log/apache2/error.log me ressort quand j'essaie d'accéder à x.x.x.x/~site2/www/news/ :

[error] [client y.y.y.y] File does not exist: /var/www/home, referer: http://x.x.x.x/~site2/www/

Je me suis donc dit que ça venait de la config des sites du côté Apache. Mais je ne vois pas le problème. J'ai essayé de changer plusieurs choses (DocumentRoot, etc.) pour voir si ça change quelque chose, mais rien.

Voici donc les configs Apache pour chacun de mes sites :

Apache site1 a écrit :

<VirtualHost *:80>
    ServerAdmin monmail@monsite.com
    ServerName www.monsite.com
    ServerAlias monsite.com
    DocumentRoot /home/site1/www/
    Userdir disabled
    SuexecUserGroup site1 site1
    <Directory />
        Options FollowSymLinks
        AllowOverride All
    </Directory>
    <Directory /home/site1/www/>
        Options FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/error.log
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Apache site2 a écrit :

<VirtualHost *:80>
    ServerAdmin monmail@mail.com
    ServerName x.x.x.x/~site2/www/
    DocumentRoot /home/site2/www/
    Userdir disabled
    SuexecUserGroup site2 site2
    <Directory />
        Options FollowSymLinks
        AllowOverride All
    </Directory>
    <Directory /home/site2/www/www/>
        Options FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/error.log
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Voyez-vous d'où peut venir mon problème ?

Merci d'avance à ceux qui voudront bien m'aider. smile

Moem

Hors ligne

#2 Le 16/02/2014, à 16:50

jplemoine

Re : Configuration Apache avec 2 sites : NOT FOUND

Dans la config de ton site2, tu as

    ServerName x.x.x.x/~site2/www/

Je pense que c'est cette ligne qui ne va pas...
Essaies de mettre

    ServerName x.x.x.x/site2

Et pour y accéder : x.x.x.x/site2, sans garantie aucune.


Ce compte ne servira plus : vous pouvez le supprimer si le coeur vous en dit...
Laissé par l'auteur pour historique.

Hors ligne

#3 Le 16/02/2014, à 17:25

Moem

Re : Configuration Apache avec 2 sites : NOT FOUND

jplemoine a écrit :

Dans la config de ton site2, tu as

    ServerName x.x.x.x/~site2/www/

Je pense que c'est cette ligne qui ne va pas...
Essaies de mettre

    ServerName x.x.x.x/site2

Et pour y accéder : x.x.x.x/site2, sans garantie aucune.

Salut,

Ca ne change rien, et le tilde (~) vient du fait que le mod user_dir est activé.

Hors ligne

#4 Le 16/02/2014, à 17:51

jplemoine

Re : Configuration Apache avec 2 sites : NOT FOUND

En vérifiant les 2 fichiers de configuration :
Site 1

 <Directory /home/site1/www/>

Site2

 <Directory /home/site2/www/www/>

Essaie de mettre

 <Directory /home/site2/www/>

Avec une seule fois www


Ce compte ne servira plus : vous pouvez le supprimer si le coeur vous en dit...
Laissé par l'auteur pour historique.

Hors ligne

#5 Le 16/02/2014, à 18:03

bruno

Re : Configuration Apache avec 2 sites : NOT FOUND

La directive ServerName attend un nom d'hôte pleinement qualifié, tu ne peux donc pas écrie :

  ServerName x.x.x.x/~site2/www/

D'autre part si tu veux accéder à tes sites simplement avec ton adresse IP : http://w.x.y.z/~nom_utilisateur et que tu utilises le mod userdir tes hôtes virtuels sont parfaitement inutiles.

#6 Le 16/02/2014, à 18:49

Moem

Re : Configuration Apache avec 2 sites : NOT FOUND

bruno a écrit :

La directive ServerName attend un nom d'hôte pleinement qualifié, tu ne peux donc pas écrie :

  ServerName x.x.x.x/~site2/www/

D'autre part si tu veux accéder à tes sites simplement avec ton adresse IP : http://w.x.y.z/~nom_utilisateur et que tu utilises le mod userdir tes hôtes virtuels sont parfaitement inutiles.

OK. En tout cas, même en désactivant mon site2 avec a2dissite, ça ne fonctionne pas plus... Toujours le même problème.

Hors ligne

#7 Le 16/02/2014, à 19:25

bruno

Re : Configuration Apache avec 2 sites : NOT FOUND

Si cela fonctionne bien pour site1, c'est probablement qu'il y a quelque chose qui est différent dans site2 : un .htaccess, des redirections, …
Essaie aussi de désactiver l'hôte virtuel par défaut (000-degault ou default suivant ta configuration).

#8 Le 19/02/2014, à 10:36

casperfr

Re : Configuration Apache avec 2 sites : NOT FOUND

Bonjour,

L'usage de l'adresse ip du serveur n'est t'il pas pour un usage par défaut dans /var/www ?
dans ce cas, n'est t'il pas possible d'utiliser le dossier /var/www et de faire un lien symbolique vers ton dossier dans le home, et donc dans le conf d'apache plus besoin de mettre de servername et tu t'affranchis du FQDN.

bonne journée.

Hors ligne