Lorsque vous voulez héberger un site créé avec le framework CakePHP 2, il est possible que vous soyez confronté à une erreur interne du serveur (code 500).
Pour régler ce problème, il suffit de modifier légèrement les 3 fichiers ".htaccess" de CakePHP. Mais la modification dépend de votre hébergeur.
Pour l'hébergeur LWS.FR, il y a 2 possibilités :
Dans le cas de l'hébergement web mutualisé (un hébergement web pour un seul site), vous n'aurez pas de problèmes.
Par contre, si vous utilisez l'option multi-domaines, vous aurez des problèmes avec les domaines supplémentaires.
En effet, avec cette option, vous pourrez héberger un site à la racine de votre compte FTP (aucun problème pour ce site), mais les autres seront dans des sous-dossiers "mon-2eme-domaine.net", "mon-3eme-domaine.net", ...
Pour ces sites, vous devrez modifier les fichiers ".htaccess" comme ceci pour que vos sites en CakePHP fonctionnent correctement :
Plain Text
\.htaccess
Apache
<IfModule mod_rewrite.c> RewriteEngine on RewriteBase / RewriteRule ^$ app/ [L] RewriteRule (.*) app/$1 [L] </IfModule>
Plain Text
\app\.htaccess
Apache
<IfModule mod_rewrite.c> RewriteEngine on RewriteBase /app RewriteRule ^$ webroot/ [L] RewriteRule (.*) webroot/$1 [L] </IfModule>
Plain Text
\app\webroot\.htaccess
Apache
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase /app/webroot RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L] </IfModule>
Pour l'hébergeur 1and1, il faut utiliser la version 5 de PHP et utiliser l'instruction RewriteBase comme ceci :
Plain Text
\.htaccess
Apache
<IfModule mod_rewrite.c> AddType x-mapp-php5 .php Options +FollowSymLinks RewriteEngine On RewriteBase / RewriteRule ^$ app/ [L] RewriteRule (.*) app/$1 [L] </IfModule>
Plain Text
\app\.htaccess
Apache
<IfModule mod_rewrite.c> AddType x-mapp-php5 .php Options +FollowSymLinks RewriteEngine On RewriteBase / RewriteRule ^$ webroot/ [L] RewriteRule (.*) webroot/$1 [L] </IfModule>
Plain Text
\app\webroot\.htaccess
Apache
<IfModule mod_rewrite.c> AddType x-mapp-php5 .php Options +FollowSymLinks RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,L] </IfModule>
Si vous avez une erreur à propos de la timezone :
Plain Text
Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier.
Il suffit de décommenter (enlever le # en début de ligne) et modifier la ligne "date_default_timezone_set" dans le fichier "\app\Config\core.php".
Note : La liste complète des fuseaux horaires se trouve sur le site de PHP.
PHP
// Fuseau horaire de la France date_default_timezone_set('Europe/Paris');
Apparemment, il suffit d'utiliser la version 5 de PHP.
Pour cela, vous avez 2 possibilités :
Si vous choisissez de passer par le fichier .ovhconfig, voici ce qu'il faut indiquer ou modifier dans ce fichier.
Note : Comme indiqué dans la FAQ d'OVH, ce fichier est présent par défaut sur les hébergements web 2014. Si ce fichier n'existe pas, il suffit de le créer.
Plain Text
.ovhconfig
Plain Text
app.engine=php app.engine.version=5.5 http.firewall=none environment=production
Si vous choisissez de passer par le fichier .htaccess, il suffit d'ajouter cette ligne au début du fichier ".htaccess" présent à la racine de votre site CakePHP :
Apache
SetEnv PHP_VER 5
Web 2/7/2013
Web 18/5/2018
Web 22/7/2013
Web 3/11/2018
Contenu épinglé
InformatiWeb Pro
Contact
® InformatiWeb.net 2008-2022 - © Lionel Eppe - Tous droits réservés.
Toute reproduction totale ou partielle de ce site est interdite et constituerait une contrefaçon sanctionnée par les articles L.335-2 et suivants du Code de la propriété intellectuelle.
Vous devez être connecté pour pouvoir poster un commentaire