Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour
J'essaie de configurer une application ZF, qui fonctionne correctement en local, sur un serveur mutualisé (Infomaniak). Je veux placer mon application dans un sous-domaine. La page d'accueil fonctionne parfaitement mais dès que j'ouvre une autre page j'obtiens :
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster@***.** and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.
En revanche, si je place mon application dans un dossier du domaine principal, disons www.site.com/toto, aucun problème.
Merci d'avance pour votre aide
Hors ligne
tu n'aurait pas un .htaccess dans ton dossier du sous domaine par hazard ?
Hors ligne
Ben oui, celui de mon application ZF
Hors ligne
c'est surement lui qui provoque une erreur 500.
Vérifie les droits du htaccess..ca m'ai déja arrivé qu'il n'ai aucun droit et que ca provoque une erreur 500
Hors ligne
Ce n'est pas ça.
Hors ligne
Tu peux nous envoyer ton .htaccess ? note que sur un hébergement mutualisé, la conf apache ou PHP peut empêcher le fonctionnement du ZF dans certains cas.
A+, Philippe
Hors ligne
Voilà
RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* index.php [L] php_flag magic_quotes_gpc off php_flag register_globals off
note que sur un hébergement mutualisé, la conf apache ou PHP peut empêcher le fonctionnement du ZF dans certains cas.
Ok mais dans ce cas, pourquoi est-ce que ça fonctionne dans le domaine principal et pas dans un sous-domaine ?
EDIT : Arghhh, ça ne fonctionne plus, même dans un dossier du domaine principal.
Dernière modification par JuTs (05-05-2008 16:11:49)
Hors ligne
J'ai jeté un oeil dans les log et les erreur sont du type 500 669. Que signifie le 669 ?
Hors ligne
J'ai trouvé quelques info dans la FAQ d'Infomaniak
Pourquoi est-ce que j'obtiens une erreur 500 sur mon site depuis le 2 juillet 2007 ?
Répondre:
Nous avons mis en place Apache2 sur nos serveurs.
Apache2 est plus strict sur les erreurs de syntaxe, en particulier avec les rewrites de vos fichiers .htaccess.
Le premier réflexe à avoir si la première page ou une autre page affiche une erreur, est de renommer le fichier .htaccess ou de commenter toutes les lignes avec # et en décommantant ligne par ligne jusqu'à trouver le passage qui pose problème.
Voici un exemple de rewrite qui ne passe plus avec Apache2 car elle comporte une erreur :
RewriteRule ^fr/appartement/([a-zA-Z0-9]+)\Pieces.htm$
./fr/appartement/$1Pieces.php [L]
ici le \P n'est pas valide. Ceci passait dans Apache 1.x mais plus dans le 2.x
De plus, lors du passage à Apache2, certains modules ne sont plus supportés par nos serveurs : mod_auth_anon, mod_auth_dbm, mod_authz_dbm, mod_cern_meta, mod_imap, mod_imagemap, mod_mime_magic
Mais je ne vois pas ce qui cloche dans mon cas, mon serveur local est aussi sur Apache 2
Hors ligne
bon, j'ai finalement réussi à obtenir quelque chose qui fonctionne dans le cas où l'application est placée dans un répertoire à la racine du domaine :
Options +FollowSymlinks RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteBase /test RewriteRule .* index.php [L] php_flag magic_quotes_gpc off php_flag register_globals off
Hors ligne