[RESOLU] rewriting d'url : je croyais avoir compris

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] rewriting d'url : je croyais avoir compris

Re: [RESOLU] rewriting d'url : je croyais avoir compris

par moogli » 13 janv. 2014, 22:23

nikel pour le résolus et le partage de la solution

merci

@+

Re: rewriting d'url : je croyais avoir compris [Résolu]

par FranckGraf » 13 janv. 2014, 13:33

Merci Moogli,

C'est beaucoup mieux

Il y a eu un petit moment de flottement car
La seconde règle (qui était devenue la première…) ne semblait respecter que le $2.

Ma pageBis s'affichait, mais seule, sans l'environnement dans lequel je l'aurais voulue include.

J'ai donc changé le

Code : Tout sélectionner

RewriteRule /page-(.*)/(.*)$ /index.php?page=$1&pageBis=$2 [L]
en

Code : Tout sélectionner

RewriteRule /page-(.*)-(.*)$ /index.php?page=$1&pageBis=$2 [L]
Le slash intermédiaire ne semble pas être supporté ou aurait-il fallu le noté Merci en tout cas pour cette aide qui me fut très préciause

Je rajoute donc "résolu" dans le titre (je ne sais pas si c'est comme ça qu'on fait ??)

Re: rewriting d'url : je croyais avoir compris

par moogli » 12 janv. 2014, 22:43

met la seconde règle avant la première car la première match forcément aussi pour la seconde, tu coup il est préférable de tester la second si cela ne fonctionne pas tu passe à l'autre ;)


@+

Re: rewriting d'url : je croyais avoir compris

par FranckGraf » 12 janv. 2014, 22:05

un petit up doublé d'un petit mieux :

Je viens de trouver peut-être, une explication.

Mon site est hébergé chez OVH et il semblerait que des "slash" soit nécessaire au bon fonctionnement de l'affaire.

oui, mais (il en faut bien…… de oui mais),

mon code :

Code : Tout sélectionner

Options +FollowSymLinks RewriteEngine on RewriteRule /page-(.*)$ /index.php?page=$1 [L]
Fonctionne


Et, lorsque j'ai ajouté le code suivant (une règle pour un autre cas en fait) :

Code : Tout sélectionner

RewriteRule /page-(.*)/(.*)$ /index.php?page=$1&pageBis=$2 [L]
La première règle fonctionne très bien, mais la seconde ne veut rien savoir.

Les slash seraient-ils vraiment l'explication ?? Et si oui, qu'est-ce qui est mauvais dans ma deuxième règle ?

Si quelqu'un à une idée, je le remercie d'avance.

rewriting d'url : je croyais avoir compris

par FranckGraf » 12 janv. 2014, 13:18

Bonjour à tous,

Depuis quelques temps je me disais que ça serait pas mal de faire une de de rewriting pour mon site.

Comme j'avais un peu de temps ce matin, je me suis penchais dessus. Heureusement que j'avais du temps :?

J''ai lu plusieurs tutoriels, trouvé des exemples en veux-tu y en a…… et même des choses qui ressemblaient pile à ce que je voulais faire.

Mais………

Ça ne fonctionne pas.

je m'en remet donc aux bonnes âmes de ce forum.

Voici ce que j'ai fait :

Dans le code html j'ai mis le lien à "<a href="page-accueil">accueil</a>".

J'ai récupéré mon fichier htaccess.

Je l'ai ouvert pour y mettre les lignes de rewriting suivantes

Code : Tout sélectionner

RewriteEngine on RewriteRule ^page-(.*)$ index.php?page=$1
Ce que j'espérai, c'est que :
monSite.fr/page-accueil
affiche l'url :
monSite.fr/index.php?page=accueil

quelque chose qui ne me semblait pas compliqué, mais qui ne fonctionne absolument pas.

L'url afficher dans la barre d'adresse est bien "http://www.grafatom.fr/page-accueil", mais erreur 404 not found……

J'ai essayé avec plusieurs "formules" différentes :
sans les ^…$
avec ([a-z]+] à la place de (.*)
avec des drapeau [L], [QSA] ou encore [QSA,L]

merci d'avance pour l'aide.