Quelques trucs divers:
Drwily a écrit :
J'utilise un fichier .htaccess depuis pas mal de temps pour faire de l'url rewrite
|
Fais attention avec l'URL rewriting, si t'utilises des fichiers .htaccess à plusieurs endroits. Par défaut, seules les règles de réécriture du fichier .htaccess le plus proche parent du répertoire de l'adresse demandée sont prises en compte. Les règles des .htaccess des répertoires parents ne sont pas prises en compte. Genre si t'as un fichier .htaccess avec des RewriteRule dans /foo/ et /foo/bar/, et que tu demandes /foo/bar/test.html, seuls les RewriteRule de /foo/bar/.htaccess seront executées.
C'est des plus anti-intuitif, étant donné que les autres instructions sont héritées... et leur "RewriteOptions inherit" sert à rien, dans une bonne partie des cas, puisque ça fait qu'importer tes RewriteRule comme si elles étaient dans le fichier .htaccess actuel... donc les tests, patterns et substitutions seront généralement mauvais. C'est vraiment pas super, niveau modularisation.
T'as pas besoin de redémarrer Apache, quand tu changes un ".htaccess". Ils sont lus à chaque fois, si y'a une modification.
Pas besoin d'utiliser '*', ici. Ça risque d'ailleurs probablement de poser problème, niveau héritage. Avec ce joker, si tu modifies quelque chose dans "/var/www/foo/", je suppose que dans "/var/www/foo/bar/", ça sera la valeur qui est dans ton bloc qui match "/var/www/*", qui sera prise en compte, au lieu d'hériter de la valeur qui est dans "/var/www/foo/".
D'autre part, pourquoi tu veux mettre ces instructions, dans /var/www/.htaccess? Si tu contrôles tout, autant les mettre dans ton fichier de configuration d'Apache. Si c'est une machine de développement, ça changera pas grand chose, mais pour des tests de performance, et des machines de production, vaut mieux éviter au maximum les .htaccess.
Pour le reste, je comprends pas trop ce que tu veux faire, et faut que je retourne travailler ^_^; Bye.