Je viens de mettre en ligne un site fait à partir de zend framework.
Le problème est que sur certaines pages j'ai un message d'erreur du type :
Warning: include_once(Zend/Form/Element/TextArea.php) [function.include-once]: failed to open stream: No such file or directory in /homez.744/site/www/library/Zend/Loader.php on line 152
Warning: include_once() [function.include]: Failed opening 'Zend/Form/Element/TextArea.php' for inclusion (include_path='.:./Zend/library:.:./library:./application/models:.:/usr/local/lib/php') in /homez.744/site/www/library/Zend/Loader.php on line 152
Alors que le fichier en question est bien présent... j'ai modifié le setIncludePath mais ça ne change rien... ça marche seulement quand je met strtolower au nom de fichier & dossier à inclure, le problème est que ça marche pour certains mais pas pour d'autre...
Du coup ma question est avez vous déjà eu ce problème ? Est il possible de désactiver la reconnaissance de majuscules/minuscules sur ovh ?
En réalité ce n'est pas vraiment la faute à zend, les servers linux sont sensibles à la case sur les noms de fichiers contrairement à Windows ou MAC ... ce qui fait que ton dév dans ces environnements passe bien et plante lors de la mise en production :(
Faut que tu fasses attention lorsque tu utilises une classe à sa case car PHP lui il n'est pas sensible à la case donc que tu instancies new Date ou new dAtE pour lui c'est la même chose, il te chargera la bonne classe (sur windows, mac ou linux).
Les choses se compliquent quand le nom de la classe (ou namespace) correspond à un nom de fichier, mais tu auras le même problème sur Symfony ou tout autre framework à base de système d'autoload.
Conclusion, vaut mieux développer sur un système similaire que celui de prod, ça évitera d'autres surprises de ce type, ou bien être strict sur la case...
Tu peux le faire avec une VM sous debian avec Virtual PC + un activer le partage de fichier sous windows avec samba, pour l'avoir fait ça marche bien et comme ça je reste sous windows (non pas que j'aime pas VI mais NetBeans est quand même plus sympa ...)
Après pourquoi pas le faire en prod éventuellement ... (NAAAANNN je déconne ^^)