[Apache] Directory chemin absolu -> 404

Directory chemin absolu -> 404 [Apache] - Réseaux - Systèmes & Réseaux Pro

Marsh Posté le 28-07-2012 à 10:05:13    

Bonjour,
 
(nb : J'ignore si je suis dans la bonne categorie, mais c'est ce que j'ai trouve de plus pertinent.)
 
Je souhaite mettre en place une architecture Zend Framework.
 
J'ai donc mis en place un alias dans mon fichier /etc/apache2/site-available/default :
 

Code :
  1. ServerName localhost/
  2. ServerAlias localhost/
  3. DocumentRoot /var/www/
  4. Alias /private/ "/home/oodelally/www/private/"
  5. <Directory "/home/oodelally/www/private">
  6.  Options FollowSymLinks MultiViews
  7.  AllowOverride All
  8.  Order deny,allow
  9.  Deny from all
  10.  Allow from 127.0.0.1 #local
  11. </Directory>


Je peux acceder a la page http://localhost/private/alcraft/public/, puisque apache va directement chercher le fichier index.php qui s'y trouve.
Le probleme se pose quand je change de page. Zend utilisant un frontController, tous les urls sont rediriges vers ce meme index, grace au .htaccess :
 
 

Code :
  1. RewriteEngine On
  2. RewriteCond %{REQUEST_FILENAME} -s [OR]
  3. RewriteCond %{REQUEST_FILENAME} -l [OR]
  4. RewriteCond %{REQUEST_FILENAME} -d
  5.  RewriteRule ^.*$ - [NC,L]
  6.  RewriteRule ^.*$ index.php [NC,L]


Ainsi, en cherchant la page http://localhost/private/alcraft/public/map/, je tombe sur :

Citation :

Not Found
The requested URL /home/oodelally/www/private/alcraft/public/index.php was not found on this server.
Apache/2.2.22 (Ubuntu) Server at localhost Port 80


La redirection vers le fichier index.php est donc bien effectuee via le .htaccess.
Or le fichier /home/oodelally/www/private/alcraft/public/index.php existe bel et bien !
 
Je suis donc alle voir le log apache error.log :
 

Citation :

[Fri Jul 27 18:45:07 2012] [error] [client 127.0.0.1] File does not exist: /var/www/home, referer: http://localhost/private/alcraft/public/


Il semblerait donc qu'Apache prend le DocumentRoot /var/www/ defini dans sa conf, et concatene le chemin "/home/oodelally/www/private" defini dans <Directory "/home/oodelally/www/private">.
Une preuve potentielle est que quand je change le DocumentRoot en /, la page me renvoie une exception Zend, qui prouve que index.php a bien ete trouve (Le fait que ce soit une exception n'a pas d'importance, cela montre juste que les fichiers de Zend ont ete atteints).
 
Tout me porte donc a croire que le chemin donne dans Directory est un chemin relatif, ce qui va a l'encontre de tout ce que j'ai pu trouver sur les tutos et forums....
 
Manque-t-il une option a ma conf quelque part ? Ou est-ce que je me trompe quelque part ?
 
N'hesitez pas a me demander tout renseignement qui vous sera utile, je repondrai dans la minute :p
 
Merci d'avance ;)


Message édité par Pascal le nain le 28-07-2012 à 10:07:22
Reply

Marsh Posté le 28-07-2012 à 10:05:13   

Reply

Marsh Posté le 30-07-2012 à 14:29:44    

ne manquerait-il pas un "/" à la fin de ton répertoire ?

Reply

Marsh Posté le 30-07-2012 à 17:24:19    

Lis http://httpd.apache.org/docs/2.2/f [...] cumentroot

 

Et tu verras que déjà le / final doit pas y être tout comme ton servername/serveralias ça n'a aucun sens.

 

Perso j'en met pas à Alias non plus


Message édité par Je@nb le 30-07-2012 à 17:24:33
Reply

Marsh Posté le 01-08-2012 à 23:44:14    

Bonjour,
 
Voici ma nouvelle config :
 
 

<VirtualHost *:80>
     ServerAdmin webmaster@localhost
 
    ErrorLog ${APACHE_LOG_DIR}/error.log
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/access.log combined
 
    RewriteLog /var/log/apache2/rewrite.log
    RewriteLogLevel 0
 
    DocumentRoot /var/www
 
 
    # Classic
     <Directory "/">
         Options FollowSymLinks MultiViews
         AllowOverride All
        Allow from all
     </Directory>
 
 
    # Perso
    Alias /public/ "/home/oodelally/www/public/"
    <Directory "/home/oodelally/www/public">
        Options FollowSymLinks MultiViews
        AllowOverride All
        Order deny,allow
        Allow from all
    </Directory>
 
</VirtualHost>
 


 
Apres plusieurs experimentations, je ne peux qu'en conclure que le chemin indiqué dans Directory est un chemin relatif a DocumentRoot, contrairement a ce qu'indique la doc (DocumentRoot).
 
Qu'en pensez-vous ?


Message édité par Pascal le nain le 01-08-2012 à 23:45:47
Reply

Marsh Posté le 07-08-2012 à 13:13:44    

Petit up :hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed