Bonjour,
Je fais appel à vous, car je viens d'héberger un site sur l'hébergeur OVH. Le site a été développé avec le framework Cakephp 3.
Tout fonctionne en local comme d'habtiude, mais sur OVH, seul le CSS, n'est pas détecté alors que le Js et les images oui.
Il cherche un controller css au lieu de me chercher le dossier.
Il me semble que je n'est pas touché au .Htacess, et je n'arrive pas à trouver de solution.
Voir ci-dessous
Htacces/racine
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
Htacces/webroot
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
Dans l'espoir d'avoir des réponses.
Cordialement
Bon, j'ai réussis à résoudre le problème sans connaitre la raison exact.
J'ai simplement, récupéré cakephp et remis les fichiers au fur et à mesure. Et tout à refonctionner. Donc c'est peut être du à une mauvaise manip de ma part.
Problème résolu. Merci à vous deux encore une fois. ;)
Ne connaissant pas ton niveau,
avant de continuer , on part du principe que tu n'as pas de problème de casse (minuscule/majuscule) ?
Merci de ta réponse. ^^
J'ai un niveau plutôt intermédiaire voir avancé surtout sur Cakephp. Et je confirme, je n'ai aucune problème de syntaxe. les documents ainsi que les fichiers sont biens nommés.
Je rajoute, quand j'écrit le chemin "webroot/css/app.css", j'ai bien accès à mon css.
Bonsoir,
Je suis bien en Php 5 sur Ovh, j'ai bien changé sur le fichier ".ovhconfig " la ligne "app.engine.version=5.5", et vérifié avec un phpinfo();.
Donc l'erreur ne doit pas venir de là.
Ce que je trouve assez bizarre, c'est que ça soit que le chemin du css, qui est un problème
Oui, sur tout mes appels avec le Helper Html, il y a un slash à la fin.
<?= $this->Html->css('app.min') ?>
Mais logiquement, on devrait quand même appeler le css avec l'url, je pense.
C'est bizarre, sur un de mes projets, je viens de vérifier, et il n'y a pas de slash à la fin.
Si tu veux y jeter un oeil.
AH bah moi je vois bien les slashs de ton coté également. X)
C'est curieux, c'est peut être le navigateur pour le coup. ( J'utilise chrome)
J'utilise Chrome également, mais je ne vois pas de slash à la fin.
Ah, j'ai compris, tu fais en regardant le code source et non via l'inspecteur.
Si tu regardes via l'inspecteur, tu as des erreurs concernant le chargement des CSS dans la console ?
Ah voilà. Oui, c'est plus simple dans mon cas.
Tu n'as eu aucun problème avec l'intégration de cakephp 3 sur OVH ? Car j'ai déjà mis le site sur un autre hébergeur gratuit et je n'ai eu aucune problème de ce coté là.
Petite rectification, je ne suis pas chez OVH, c'était juste pour te montrer le rendu du helper Html concernant la non présence du slash à la fin, mais nous ne regardions pas le rendu du Html généré de la même manière.
@lartak: Autant pour moi.
@Huggy: Oui c'est bien ça, les deux fichiers .htaccess proposé par cakephp de base à la racine et dans le fichier webroot. Je parle de ça, car j'ai vu que sur l'ancienne version, il y avait eu des problèmes avec ça.
Tu n'as pas répondu à ma question :
Si tu regardes via l'inspecteur, tu as des erreurs concernant le chargement des CSS dans la console ?
Pardon je n'avais pas vu.
J'ai les erreurs 404:
Failed to load resource: the server responded with a status of 404 (Not Found)
Oui oui. J'ai accès au fichier css, en rajoutant webroot, juste avant.
exemple:
<link rel="stylesheet" href="webroot/css/app.min.css">
Dans ce cas là, c'est assez bizarre que tu aies des problèmes pour les CSS et non pour les JS.
Oui. Mais j'ai quand même essayé sans la minification et c'est toujours pareil en faite.
@Lartak, Très bizarre, je comprend vraiment pas d'où peut venir le problème en faite.
Quelle est ton arborescence
Parfois il faut rajouter un RewriteBase si tu as un répertoire principal sous www
Tout est dans le dossier www de l'hébergeur.
Mais je sais pas si c'est comme ça qu'il faut le faire.
.htacess de Webroot ci-dessous:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
</IfModule>
Mais ça n'a pas l'air de fonctionner.
Parfois le pb est résolu mais à cause d'un pb de cache, on ne le voit pas
pense à rafraichir ou à tester sur un autre navigateur (c'est trivial je sais)
X) Je vous remercie en tout cas de m'aider. C'est gentil à vous.
Je réssayerais demain, j'ai essayé sur trois navigateurs, mais le problème n'est toujours pas résolu.