Je suis en train de réécrire une URL de ceci: http://www.foo.com/bar/bazrewrite .htaccess d'une url [aide à la règle]
à
index.php q = 1 & $ d = baz
Où barre n'est pas une valeur fixe, mais baz est.
RewriteRule ^(.*)\/baz$ index.php?q=$1&d=baz [L,QSA]
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
Ce que je ci-dessus Kinda fonctionne mais me brise malheureusement l'inclut dans le site (css/javascript) mais étrangement toutes les pages de travail:/
Ceci est une drupal installation, (de sorte que le la deuxième ligne doit rester).
MISE À JOUR
Cela pourrait réellement aider, j'oublié d'inclure
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
**RewriteRule ^(.*)/details index.php?q=$1&details=true [L,QSA]**
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
Il semble faire correctement mon rewrite, le seul problème est qu'il est ignorant les autres déclarations conditionnelles maintenant, à savoir qu'il est toujours en train d'essayer de réécrire les fichiers existants (ie css, js) quand c'est un moyen de les éviter.
le site est très bien sans ma ligne (celle avec les étoiles), mais avec elle, les variables et les pages fonctionnent, mais les fichiers statiques comme css etc. sont également en cours de réécriture .... besoin d'arrêter ça!
Merci d'avance.
Shadi
À quoi sert la deuxième règle? – Greg
La deuxième règle est une règle drupal pour réécrire toutes les URL et les envoyer dans son cadre. Donc, fondamentalement, je dois capturer toutes les URL qui se terminent par baz, puis les envoyer à index.php de drupal en leur disant que c'est la page "bar" (qui change toujours), et définir une variable get de d = baz (fixe) . Sinon (si baz n'existe pas) continuer comme d'habitude. –