UrlRewriting et Yahoo

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics


NoName
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Jeu Nov 04, 2004 2:32

UrlRewriting et Yahoo

Message le Lun Sep 19, 2005 23:18

Hello,

Je me suis aperçus que Yahoodonne comme résultats pour un de mes sites, les url sans le "/" à la fin, ce qui ammene directement sur une erreur 404 (exemple) (chose normale au vue de mes regles url rewriting).

Pourtant, tous mes liens sont avec un slash à la fin. Les autres moteurs référence correctement le site.

J'ai essayé le code suivant afin d'ajouter le slash manquant éventuellement dans l'url mais sans succes :
Code: Tout sélectionner
RewriteCond (.*)([^/])$
RewriteRule (.*)([^/])$   /$1/  [QSA,L]


thx ;)

jeroen
WRInaute accro
WRInaute accro
 
Messages: 2384
Inscription: Ven Aoû 30, 2002 13:35

Message le Lun Sep 19, 2005 23:40

Rajoute un point d'intérogation aprés le dernier / de tes rewriterules

sur l'exemple

Code: Tout sélectionner
RewriteRule flash-games/([0-9]+)/? ...

ce qui indique la présence, ou non, d'un /


NoName
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Jeu Nov 04, 2004 2:32

Message le Mar Sep 20, 2005 10:56

Arf, tout simplement.

thx ;)


NoName
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Jeu Nov 04, 2004 2:32

Message le Mar Sep 20, 2005 21:33

En fait ça me pose pb... exepliquations :

Code: Tout sélectionner
RewriteRule ^folder/([a-z])/(.*)/?$ /file.php5?var1=$1&var2=$2 [L]


Seul pb, si j'accede avec un slash à la fin, var2 ($2) retourne la variable et le slash (/) à la fin :(

Edit : Correction code
Dernière édition par NoName le Mar Sep 20, 2005 22:51, édité 1 fois.

jeroen
WRInaute accro
WRInaute accro
 
Messages: 2384
Inscription: Ven Aoû 30, 2002 13:35

Message le Mar Sep 20, 2005 21:47

c'est quoi var1 et var2 dans ton url de base ?, car je ne vois qu'une paire de () ?


NoName
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Jeu Nov 04, 2004 2:32

Message le Mar Sep 20, 2005 22:51

jeroen a écrit:c'est quoi var1 et var2 dans ton url de base ?, car je ne vois qu'une paire de () ?


Effectivement, j'ai corrigé mon exemple de code. thx

jeroen
WRInaute accro
WRInaute accro
 
Messages: 2384
Inscription: Ven Aoû 30, 2002 13:35

Message le Mer Sep 21, 2005 8:39

Ah oui, c'est parce que les REGEX sont gloutons...

sur cette page tu peux lire :

Attention : les quantificateurs * et + sont "gloutons" ! (ou "avides", comportement par défaut). Cela signifie que le moteur d'expressions régulières, en cas de solutions multiples, opte pour celle qui reconnait le maximum de caractères.
Pour y remédier, on peut être plus précis dans l'écriture du motif ou neutraliser la gloutonnerie en mettant ? juste après un quantificateur + ou *



essaie ça :
Code: Tout sélectionner
RewriteRule ^folder/([a-z])/(.*?)/?$ /file.php5?var1=$1&var2=$2 [L]


NoName
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Jeu Nov 04, 2004 2:32

Message le Mer Sep 21, 2005 10:02

merci, je regarde ça tout à l'heure et je te tiens au courant.

ps : pas mal la page regexp du site ac-creteil ;)


NoName
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Jeu Nov 04, 2004 2:32

Message le Mer Sep 21, 2005 21:50

Désolé mais ça ne fonctionne pas :(

Internal Server Error

Mais où est l'erreur :roll:

jeroen
WRInaute accro
WRInaute accro
 
Messages: 2384
Inscription: Ven Aoû 30, 2002 13:35

Message le Mer Sep 21, 2005 22:46

Effectivement, le modificateur ? semble ne pas marche dans les REGEX...

une autre solution qui marche :
Code: Tout sélectionner
RewriteRule ^folder/([a-z])/([^/]*)/?$ /file.php5?var1=$1&var2=$2 [L]


NoName
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Jeu Nov 04, 2004 2:32

Message le Jeu Sep 22, 2005 9:48

Impec ! Merci jeroen ;)


NoName
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Jeu Nov 04, 2004 2:32

Message le Mer Oct 05, 2005 0:24

En fait il y a un pb :(

exemple : http://www.myx7.com/contact/ ne fonctionne pas, alors que sans le slash à la fin ça fonctionne.

Ton code ne fonctionne (enfin je pense) seulement quand dans le repertoire virtuel j'ai une page index (style index.php)

Pour info, le code :
Code: Tout sélectionner
Options -Indexes
DirectoryIndex index.php index.php3 index.php4 index.php5 index.html index.htm index.phtml
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^contact/?$ /form_contact.php5 [QSA,L]


NoName
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Jeu Nov 04, 2004 2:32

Message le Mer Oct 05, 2005 0:30

Et autre chose étrange, quand je fais http://myx7.com/contact/ (sans les www donc), j'ai ça : http://www.myx7.com/contact.php5/

Le code :
Code: Tout sélectionner
RewriteCond %{HTTP_HOST} !^www.myx7.com$
RewriteRule ^(.*) http://www.myx7.com/$1 [QSA,L,R=301]


NoName
WRInaute discret
WRInaute discret
 
Messages: 71
Inscription: Jeu Nov 04, 2004 2:32

Message le Mer Oct 05, 2005 14:35

up

jeroen
WRInaute accro
WRInaute accro
 
Messages: 2384
Inscription: Ven Aoû 30, 2002 13:35

Message le Mer Oct 05, 2005 15:48

NoName a écrit:En fait il y a un pb :(

exemple : http://www.myx7.com/contact/ ne fonctionne pas, alors que sans le slash à la fin ça fonctionne.


moi pas comprendre.
Tu ve réécrire ça , tu ne veux pas ?

UrlRewriting et Yahoo

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités