CakePHP 2, OVH et htaccess

En essayant d’envoyer un projet utilisant CakePHP sur mon hébergement mutualisé OVH, je me suis rendu compte que ce même projet en CakePHP 1.3 fonctionnait parfaitement mais je l’avais depuis porté sur Cake 2.0. Avec cette dernière version, le mod_rewrite semblait complètement divaguer. J’ai envoyé ce projet dans un sous dossier du serveur (du genre www/projects/mycakeapp) et cake interprétait mycakeapp comme si c’était un controller (alors que c’était la racine du site cake), donc j’obtenais un message d’erreur comme quoi MycakeappController était introuvable.

Après quelques heures de recherches, voila ce que j’ai obtenu en mélangeant plusieurs solutions, voici mes .htaccess maintenant (qui sont dans les dossiers webroot, app et racine) :

SetEnv PHP_VER 5_3
RewriteEngine On
RewriteBase /projets/videoclubkano
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]

SetEnv PHP_VER 5_3
RewriteBase /projets/videoclubkano
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]

SetEnv PHP_VER 5_3
RewriteBase /projets/videoclubkano
RewriteEngine on
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]

 

Voila le genre d’erreur que je rencontrais:

Missing Controller

Error: MycakeappController could not be found.

Error: Create the class MycakeappController below in file: app/Controller/MycakeappController.php

Et les liens générés par cake étaient faux,  par exemple /projects/posts à la place de /projects/mycakeapp/posts.

A part ça, quelques soucis mineurs pour passer de cake 1.3 à 2.0 mais rien qui ne soit pas documenté, et je n’ai pas gardé de trace écrite de ces problèmes.

4 réflexions au sujet de « CakePHP 2, OVH et htaccess »

  1. Merci, c’est exactement ce que je cherchais et ça marche du premier coup !
    Juste une petite suggestion, indiquer dans quel répertoire on trouve ces différents .htaccess (dans l’ordre webroot, app et racine).

    Encore merci !

  2. Bonjour,

    Il est donc possible d’utiliser cakePhp sur n’importe quel hébergement mutualisé de OVH ?

    Cette question est importante pour moi si quelqu’un a la réponse qu’il n’hésite pas à me contacter.

    • D’après mon expérience, oui. Cependant je n’ai testé qu’avec mon mutualisé (il en existe de plusieurs types?) et avec CakePHP d’il y a un an. Il y a peut être eu de nouvelles modifications depuis.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *