Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
J'aimerais pouvoir faire des répertoire dynamiques grâce à l'URL rewriting mais cela n'a pas l'air de fonctionner avec zend framework (enfin je n'ai pas trouvé la solution).
Voici la structure de mon site
L'Url de base est : http://www.monsite.com/monsite/ (tous les dossiers applications, public, library,... sont dans le dossier monsite)
Et voici ce que j'aimerais pouvoir faire :
Chaque utilisateur a un pseudo et à la manière de myspace j'aimerais que l'espace perso d'un utilisateur soit accessible en faisant http://www.monsite.com/pseudo (pseudo étant donc dynamique)
J'ai donc essayé avec le code ci-dessous mais il ne m'affiche jamais la page du profile mais toujours la page d'accueil
RewriteEngine on
RewriteBase /monsite
RewriteRule ^(*.)$ /monsite/profile/index/index/?pseudo=$1 [L]
profile = module
index = controller
index = action
Y'a-t-il un moyen avec Zend framework d'accéder de passer les noms de modules, controller et action en parametre url ? Ex: http://www.monsite.com/monsite/index.ph … action=xxx
Quelqu'un aurait-il une idée pour réaliser tout ça ?
Merci d'avance
Hors ligne
Avant d'aller plus loin, utilises-tu vraiment le MVC du zf? Car là, je ne vois pas les règles necessaires...
Ceci
RewriteEngine on RewriteBase /monsite RewriteRule ^(*.)$ /monsite/profile/index/index/?pseudo=$1 [L]
Doit être transformé en route au niveau du code pas dans le .htaccess. Le mvc du zf zappe les réécritures. Pour parler gras, il prend l'url tapée dans la barre d'adresse...
Hors ligne
J'utilise bien les règles de réécriture pour ZF
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1
L'url rewriting fonctionne quand je force la redirection en mettant [R=301, L]
RewriteBase /monsite
RewriteRule ^(*.)$ /monsite/profile/index/index/?pseudo=$1 [R=301, L]
Mais j'aimerais ne pas avoir à force la redirection afin qu'il reste sur l'url xxx/pseudo
J'ai l'impression qu'on ne peut spécifier qu'un chemin vers un fichier qui existe physiquement.
Dernière modification par johannZF (03-01-2008 15:50:19)
Hors ligne
>> J'ai l'impression qu'on ne peut spécifier qu'un chemin vers un fichier qui existe physiquement.
Nop, c'est juste que le zf zappe les réécritures. Pour parler gras, par default il prend l'url tapée dans la barre d'adresse...
Je me repète mais ce que tu veux faire se fait avec un bon petit routage => http://framework.zend.com/manual/fr/zen … outer.html
Hors ligne
Merci pour ton aide.
Effectivement ta solution est beaucoup plus simple et fonctionne parfaitement.
Hors ligne
Pages: 1