Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Hello,
[Traduction issue de la mailing list de dév]
Suite à un certain nombre de problèmes remonter avec l'utilisation du paquet Dojo intégré à la version 1.6.0, le QuickStart officiel et la documentation vont être modifiés au niveau des règles de RewriteRule recommandées.
Actuellement il y a :
RewriteEngine on RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
Traduction rapide : "à moins d'être une image, un CSS, on redirige vers le contrôleur frontal"
Dojo intègre un certain nombre de fichiers, certains sont des templates destinés à la création des widgets. Si vous réalisez votre propre build ces templates HTML seront intégrés aux js mais dans la source ils s'agit de fichiers séparés. Pour éviter une redirection malencontreuse vers le contrôleur frontal voici de nouvelles règles :
RewriteEngine On RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L]
Traduction rapide : "si la ressource requêtée n'est pas un lien symbolique, un fichier ou un dossier valide on renvoie vers le contrôleur frontal".
A+
Dernière modification par mikaelkael (10-09-2008 22:18:05)
Hors ligne
Merci pour l'info,
une note pour ceux qui (comme moi) ont été intrigués par le "-s" (perso j'aurais bien vu un "-f" au départ) :
# '-f' (is regular file) Treats the TestString as a pathname and tests whether or not it exists, and is a regular file. # '-s' (is regular file, with size) Treats the TestString as a pathname and tests whether or not it exists, and is a regular file with size greater than zero.
A+, Philippe
Hors ligne
Faire ça revient-t-il au même?
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-s RewriteCond %{REQUEST_FILENAME} !-l RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^.*$ index.php [NC,L]
Hors ligne
Je dirais que c'est pareil... mais il y a souvent des subtilités qui m'échappent dans les rewrite rules...
A+, Philippe
Hors ligne
Mr.MoOx a écrit:
Faire ça revient-t-il au même?
Code:
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-s RewriteCond %{REQUEST_FILENAME} !-l RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^.*$ index.php [NC,L]
Personnellement j'utilise ça pour éviter de voir mon domaine sans les www :
RewriteEngine on RewriteRule !\.(js|ico|gif|jpg|png|css|swf|mp3)$ index.php RewriteCond %{HTTP_HOST} !^www\.mondomaine\.com [NC] RewriteRule (.*) http://www.mondomaine.com [QSA,R=301,L]
Je peux fusionner mes deux dernières lignes sans problème ?
Hors ligne