2010-03-04 4 views
0

Comment réécrire cette règle pour tout rediriger vers l'index ou la racine_serveur?Aidez-moi à réécrire cette règle htaccess

S'il y a une demande de mot-clic, www.site.com/articles/some-article.php, le fichier somearticle.php doit être redirigé vers la page d'index. Je ne veux pas non plus que l'URL affiche la partie "index" de l'URL. site.com/index est l'endroit où tout devrait être.

RewriteRule ^(.*)$ index.php?dk=$1 [L,QSA] 

OK, je vois maintenant ce qui se passe et je pense qu'il peut aider quelqu'un à me aider à mieux. Avec ma règle, exactement comme ci-dessus dans mon exemple, je peux obtenir la suivante dans mon fichier index.php sans problèmes.

http://site.com/index/somethin/else/here/test.php 

Voici ce que je dois: je dois retirer la partie d'index de l'URL. Cette URL devrait être réécrite comme: http://site.com/somethin/else/here/test.php

J'espère que cela aide.

Répondre

0

La réécriture passerait l'URL à www.site.com/index.php?dk=articles/some-article.php, c'est ce que vous recherchez?

RewriteRule ^/articles/(.*)$ index.php?dk=$1 [L,QSA] 

Cela devrait vous donner www.site.com/index.php?dk=some-article.php

RewriteRule ^/articles/(.*).php$ index.php?dk=$1 [L,QSA] 

vous donne www.site.com/index.php?dk=some-article

Ou voulez-vous www.site.com/?dk=some-article?

+0

Merci d'avoir répondu. Ce que je veux, c'est de tout réécrire sur la page index.php. Donc, www.site.com/index.php?dk=some-article.php ainsi que www.site.com/index.php?dk=something.php&somethingelse=34 devraient aussi être réécrits. – jim

0
RewriteRule ^.*/(.*)$ /?dk=$1 [L,QSA] 

... si vous voulez seulement transmettre le nom du fichier, ou ...

RewriteRule ^(.*)$ /?dk=$1 [L,QSA] 

... si vous voulez que le chemin complet

+0

Salut Christian, merci pour la réponse. Malheureusement, aucun de ces travaux et je n'ai juste pas assez d'expérience avec réécrire pour comprendre pourquoi ... Savez-vous pourquoi le chemin complet n'est pas réécrit? – jim

+0

Tout Im getting est la page introuvable. – jim