Bonjour à tous,

J'ai développé un site avec CakePHP, qui fonctionne très bien en local et sur mon hébergement mutualisé 1and1.
Mais maintenant, je dois le mettre en ligne sur le serveur dédié kimsufi de mon client et j'ai ces erreurs :

Warning (2): SplFileInfo::openFile(/home/fonciere/www/app/tmp/cache/persistent/myapp_cake_core_cake_fr) [function.SplFileInfo-openFile]: failed to open stream: No such file or directory [CORE/Cake/Cache/Engine/FileEngine.php, line 355]
Warning (512): Cannot open file '/home/fonciere/www/app/tmp/cache/persistent/myapp_cake_core_cake_fr' [CORE/Cake/Cache/Engine/FileEngine.php, line 357]
Warning (2): SplFileInfo::openFile(/home/fonciere/www/app/tmp/cache/persistent/myapp_cake_core_cake_fr) [function.SplFileInfo-openFile]: failed to open stream: No such file or directory [CORE/Cake/Cache/Engine/FileEngine.php, line 355]
Warning (512): Cannot open file '/home/fonciere/www/app/tmp/cache/persistent/myapp_cake_core_cake_fr' [CORE/Cake/Cache/Engine/FileEngine.php, line 357]
Warning (2): SplFileInfo::openFile(/home/fonciere/www/app/tmp/cache/persistent/myapp_cake_core_cake_dev_fr) [function.SplFileInfo-openFile]: failed to open stream: No such file or directory [CORE/Cake/Cache/Engine/FileEngine.php, line 355]
Warning (512): Cannot open file '/home/fonciere/www/app/tmp/cache/persistent/myapp_cake_core_cake_dev_fr' [CORE/Cake/Cache/Engine/FileEngine.php, line 357]
Warning (2): SplFileInfo::openFile(/home/fonciere/www/app/tmp/cache/persistent/myapp_cake_core_cake_dev_fr) [function.SplFileInfo-openFile]: failed to open stream: No such file or directory [CORE/Cake/Cache/Engine/FileEngine.php, line 355]
Warning (512): Cannot open file '/home/fonciere/www/app/tmp/cache/persistent/myapp_cake_core_cake_dev_fr' [CORE/Cake/Cache/Engine/FileEngine.php, line 357]
Warning (512): _cake_core_ cache was unable to write 'cake_dev_fr' to File cache [CORE/Cake/Cache/Cache.php, line 325]
Warning (512): _cake_core_ cache was unable to write 'cake_fr' to File cache [CORE/Cake/Cache/Cache.php, line 325]

Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 7680 bytes) in /home/fonciere/www/lib/Cake/Model/Datasource/DboSource.php on line 3157

J'ai essayé en modifiant le .htaccess, en changement les permissions des dossiers /tmp/cache/persistent/ et même en essayant de bidouiller le fichier FileEngine.php sans résultat.

Si quelqu'un à une réponse ?!

Merci d'avance

7 réponses


charlie404
Auteur
Réponse acceptée

je pense que c'est bien un problème de fichier phar car quand je fais un phpinfo() sur le serveur dans la colonne "Registered PHP Streams" je n’ai pas le fichier phar

php, file, data, http, ftp, compress.zlib, https, ftps

alors qu'en localhost j'ai :

https, ftps, compress.zlib, compress.bzip2, php, file, glob, data, http, ftp, phar, zip

La question c'est comment faire pour que le serveur accepte les fichiers phar ?

Je n’y connais vraiment rien en serveur dédié et ça fait 2 jours que je me prends la tête pour mettre mon site en ligne.

En tout cas merci de t’intéresser à mon cas ! :)

T'as essayé de mettre tout le dossier tmp en CHMOD 777 ?

chmod -R 777 /home/fonciere/www/app/tmp

Il me semble que j'avais eu une erreur similaire avec ma machine virtuelle.

Bonjour et merci pour ta réponse !

Je suis novice sur kimsufi.
Peux-tu me dire où je trouve la console pour pouvoir rentrer cette commande dans le webmin de kimsufi ?

Soit tu te connectes en SSH et tu tapes la commandes une fois connecté au dédié.
Via webmin, je n'en ai aucune idée, je ne l'ai jamais utilisé.
Sinon, via FTP, tu peux le faire assez facilement. Exemple avec FileZilla :
Clique droit sur le dossier tmp => Droits d'accès au fichier ... =>

Merci encore pour ta réponse.

Malheureusement ça ne fonctionne pas, même en appliquant à tous les dossiers et fichiers. :(

Bon ben j'ai du nouveau !

J'ai mis en commentaire

/**
 * Configure the cache used for general framework caching. Path information,
 * object listings, and translation cache files are stored with this configuration.
 */
Cache::config('_cake_core_', array(
    'engine' => $engine,
    'prefix' => $prefix . 'cake_core_',
    'path' => CACHE . 'persistent' . DS,
    'serialize' => ($engine === 'File'),
    'duration' => $duration
));
/**
 * Configure the cache for model and datasource caches. This cache configuration
 * is used to store schema descriptions, and table listings in connections.
 */
Cache::config('_cake_model_', array(
    'engine' => $engine,
    'prefix' => $prefix . 'cake_model_',
    'path' => CACHE . 'models' . DS,
    'serialize' => ($engine === 'File'),
    'duration' => $duration
));

dans le core.php

Mais maintenant j'ai un problème avec le plugin Media

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/fonciere/www/app/Plugin/Media/View/Helper/MediaHelper.php on line 54
Parse error: syntax error, unexpected T_STRING in /home/fonciere/www/app/Plugin/Media/View/Helper/MediaHelper.php on line 54

Et à la ligne 54 du MediaHelper c'est l'appel à la class Imagine

$imagine = new Imagine\Gd\Imagine();

Apparemment le serveur kimsufi n'accepte pas par default les fichiers phar

Est-ce que tu aurais une solution contre ça ?

Encore merci

Hmmm... En regardant mieux le code d'erreur, on dirait qu'il arrive pas à trouver un fichier. Tu as essayé de re-uploader les fichiers de CakePHP (dossier lib) ? Ca m'est déjà arrivé qu'un fichier soit mal copié.

Sinon, pour PHAR, il s'installe de base avec PHP, donc je comprends pas le problème avec phar