Bonjour,

Voilà je vous explique mon problème : j'ai suivi un tutoriel sur openclassroom qui m'a permit de me créer mon framework.

L'architecture est la suivante :

  • APP (avec à l'interrieur Fontend et backend)
  • Error
  • Lib
  • web (mon dossier public)

Mon application terminé, je souhaite la mettre en production.
J'ai prit un hebergement sur ONE.COM.

Mais rien ne s'affiché du tout .... j'ai déplacé mon .htaccess de /Web à la racine mais la seule chose que j'obtiens c'est :

Not Found

The requested URL /bootstrap.php was not found on this server.

Quelqu'un peut m'aider ? ^^

Je vous donne mon .htaccess :

RewriteEngine On

RewriteRule ^admin/ bootstrap.php?app=Backend [QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ bootstrap.php?app=Frontend [QSA,L]

La seule chose que m'a donné ONE.COM c'est le file system path, mais je sais pas comment m'en servir :

/customers/7/9/f/gite-lebarou27.fr//httpd.www/

11 réponses


Huggy
Réponse acceptée

mets la règle css en premier car elle est plus précise
Tu dis que le frontEnd est dans App, au même niveau que Web. comment c'est possible car rien n'y fait référence !!!

Bonjour amelie27,
tes pages html semblent bien redirigées mais pas les css ni les js
tu dois rajouter des règles pour traiter tout ça
par exemple pour les css

RewriteRule ^(css/.*)   $1 [L]

faire pareil pour les dossiers images et js

J'ai rajouté un .htaccess à la racine et mit ce code :

Options +FollowSymlinks

RewriteEngine on

RewriteRule ^$ /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/    [QSA,L]
RewriteRule (.*)  /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/   [QSA,L]

Du coup maintenat le html fonctionne (sauf la partie back) ....

J'ai rajouté ton code et le css et js ne fonctionne toujours pas ...

Je tombe maintenant sur la page de l'hébergeur !!!

Parce que je faisais des tests ..mais ca marche pas ..

Il faut adapter les chemins en fonction de là où est le .htaccess
si ton htaccess est au dessus du dossier Web

RewriteRule ^(css/.*)  Web/$1 [L]
Options +FollowSymlinks

RewriteEngine on

RewriteRule ^$ /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/    [QSA,L]
RewriteRule (.*) /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/   [QSA,L]

RewriteRule ^(css/.*)   /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/$1 [L]

Voilà ce que j'ai mis. J'ai également testé avec que Web/ et aussi /Web/ et cela ne fonctionne toujours pas ....

Ah ! cool ca fonctionne :)

Je te montre mon architecture :

- App
|-- Frontend
|-- Backend
- lib
- Errors
- Web
|-- CSS
|-- JS
|.htaccess
|Bootstrap.php
- .htaccess

Le premier .htaccess à la racine :

Options +FollowSymlinks

RewriteEngine on
RewriteRule ^(css/.*)   /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/$1 [L]
RewriteRule ^(js/.*)   /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/$1 [L]
RewriteRule ^(images/.*)   /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/$1 [L]

RewriteRule ^$ /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/    [QSA,L]
RewriteRule (.*) /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/   [QSA,L]

Celui dans Web/ :

Options +FollowSymlinks
RewriteEngine On

RewriteRule ^admin/ Bootstrap.php?app=Backend [QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ Bootstrap.php?app=Frontend [QSA,L]

Et c'est mon fichier Bootstrap.php qui fait le lien vers app/

Je te remercie :)

Par contre je n'arrive pas à avoir accès à admin/

y a aussi un bug sur 'activité'
Es-tu obligé de passer par Bootstrap pour le backend ?

Je viens de régler le problème avec 'activites' :)

Bah ... je sais pas ... comment faire autrement ? j'ai suivit un tutoriel pour créer cette structure

Tu ne devrais pas avoir de htaccess dans Web
tu devrais pouvoir gérer le front et le back depuis le htaccess de la racine car le Web n'est pas concerné
htaccess de la racine

Options +FollowSymlinks

RewriteEngine on
RewriteRule ^(css/.*)   /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/$1 [L]
RewriteRule ^(js/.*)   /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/$1 [L]
RewriteRule ^(images/.*)   /customers/7/9/f/gite-lebarou27.fr//httpd.www/Web/$1 [L]

RewriteRule ^admin/ Bootstrap.php?app=Backend [QSA,L]
# renvoie tout sur Frontend
RewriteRule ^(.*)$ Bootstrap.php?app=Frontend [QSA,L]