page index.html en erreur

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

mark_h
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 9
Inscription: 9 Mar 2007

page index.html en erreur

Message le Sam Juin 28, 2008 12:27

bonjour,
je débute avec url rewriting et j'aurais besoin d'une petite aide :)
voici mon pb:
la configuration de mon site est la suivante:
j'ai une page index.php (à la racine) avec un répertoire includes/ ou je met mes pages à inclures :D
à la racine du site j'ai aussi une page index.html qui est ma page d'accueil.
dans mon fichier .htaccess j'ai mis :

Code: Tout sélectionner
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^([a-zA-Z_-]*)\.html$ /index.php?pag=$1 [L]


mon problème c'est que lorsque je tape http://www.monsite.com ça marche pas -> par ex:
Firefox a détecté que le serveur redirige la demande pour cette adresse d'une manière qui n'aboutira pas.
merci par avance si quelqu'un pouvais me venir en aide 8O


Marie-Aude
Modérateur
Modérateur
 
Messages: 11889
Inscription: 5 Juin 2006

Message le Sam Juin 28, 2008 14:42

Avec la vraie adresse du site ça aiderait

mark_h
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 9
Inscription: 9 Mar 2007

Message le Mer Juil 30, 2008 18:27

Bonsoir,
je reviens pour demander de l'aide car ça fait un moment que je galère et y doit avoir des choses que j'ai pas bien compris dans la réécriture :cry:
je vous remet le contenu de mon fichier htacess:
Code: Tout sélectionner
RewriteEngine On

# si je met pas cet ligne impossible d'avoir la page d'index ??? normal ???
RewriteRule index\.html$ index.html [L]

# régle qui fonctionne !!!
RewriteRule ^([A-Za-z_-]+)\.html$  /realestate.php?pag=$1 [L]


# ici je ssouhaite ajouter des mots clés
RewriteRule ^([A-Za-z_-]+)-([A-Za-z_-]+)\.html$ /realestate.php?pag=$1 [L]


RewriteRule ^([A-Za-z_-]+)-([A-Za-z_-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$2 [L]

RewriteRule ^([A-Za-z_-]+)-([0-9]+)\.html$ /realestate.php?pag=contact-us&confirm=$2 [L]


je pense qu'il y a de grosses erreurs :oops: pouvez vous m'aider à avancer merci

mark_h
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 9
Inscription: 9 Mar 2007

Message le Jeu Juil 31, 2008 5:42

aprés X test j'ai regroupé les règles qui marche, reste la dernière qui pause pb 8O

Code: Tout sélectionner
RewriteEngine On

# si je met pas cet ligne impossible d'avoir la page d'index ??? normal ???
RewriteRule index\.html$ index.html [L]

# régles qui fonctionne !!!
RewriteRule ^([A-Za-z_-]+)\.html$  /realestate.php?pag=$1 [L]
RewriteRule ^([A-Za-z_-]+)-([0-9]+)\.html$ /realestate.php?pag=contact-us&confirm=$2 [L]


# je souhaite ajouter des mots clés entre le nom de la page et id_select
#règle qui me conduit sur la page contact-us quant je test ????
RewriteRule ^([A-Za-z_-]+)-([A-Za-z_-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$3 [L]


Vap
WRInaute passionné
WRInaute passionné
 
Messages: 1090
Inscription: 17 Juin 2007

Message le Mar Aoû 05, 2008 14:02

Ca aiderait si tu disait quel est le problème que tu as avec la dernière règle...

Ta première règle empêche les règles suivantes de s'appliquer si tu as index.html, grâce au [L] qui est à la fin. C'est pour cela qu'elle est utile.

mark_h
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 9
Inscription: 9 Mar 2007

Message le Mer Aoû 06, 2008 5:26

bonjour,
c'est la dernière:
Code: Tout sélectionner
RewriteRule ^([A-Za-z_-]+)-([A-Za-z_-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$3 [L]

quant ma page a un nom simple genre welcome c'est ok mais ça se gatte quant le nom de la page est du genre listing-realestate-sales par exemple :?
merci pour l'aide.

Vap
WRInaute passionné
WRInaute passionné
 
Messages: 1090
Inscription: 17 Juin 2007

Message le Mer Aoû 06, 2008 9:23

mark_h a écrit:bonjour,
c'est la dernière:
Code: Tout sélectionner
RewriteRule ^([A-Za-z_-]+)-([A-Za-z_-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$3 [L]

quant ma page a un nom simple genre welcome c'est ok mais ça se gatte quant le nom de la page est du genre listing-realestate-sales par exemple :?
merci pour l'aide.


Ca se gate, c'est-à-dire?

Qu'est-ce qui se passe?

mark_h
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 9
Inscription: 9 Mar 2007

Message le Mer Aoû 06, 2008 14:37

en fait il y a 2 cas:

(ci dessous marche mais il ne faut pas que je mette plus qu'un mot clé sinon je repars en page par défaut (accueil)
RewriteRule ^([A-Za-z_-]+)-([A-Za-z_-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$3 [L]

(ci dessous je perd ma variable id_fiche (dans ce cas je vais en page défault que j'ai définie ou id_fiche=1))
et si jamais je met 2 mots clé je repars en page par défaut (accueil)
RewriteRule ^([A-Za-z_-]+)-([A-Za-z_-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_fiche=$3 [L]

Code: Tout sélectionner

RewriteRule index\.html$ index.html [L]
RewriteRule ^([A-Za-z_-]+)\.html$ realestate.php?pag=$1 [L]
RewriteRule ^([A-Za-z_-]+)-([A-Za-z_-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$3 [L]
RewriteRule ^([A-Za-z_-]+)-([A-Za-z_-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_fiche=$3 [L]


Vap
WRInaute passionné
WRInaute passionné
 
Messages: 1090
Inscription: 17 Juin 2007

Message le Mer Aoû 06, 2008 15:31

IL y a un problème avec ta règle :
Code: Tout sélectionner
RewriteRule ^([A-Za-z_-]+)\.html$  /realestate.php?pag=$1 [L]


Car cette règle attrape les URL qui contiennet des tirets.

Vu que tu veux utiliser les tirets comme séparateurs de mots clés, il faudrait l'enlever de la condition :

Code: Tout sélectionner
RewriteRule ^([A-Za-z]+)\.html$  /realestate.php?pag=$1 [L]


[edit]Les deux autres règles ont exactement la même partie gauche, donc la dernière ne s'appliquera jamais.

mark_h
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 9
Inscription: 9 Mar 2007

Message le Mer Aoû 06, 2008 18:23

après modif de 2ème règle ça marche, :D maintenant la regle:

Code: Tout sélectionner
RewriteRule ^([A-Za-z_-]+)-([A-Za-z_-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$3 [L]


marche si j'ai un seule mot clé, mais si j'en met deux (séparé par un tiret) ça fonctionne pas.
il y a un point que j'ai pas bien compris je pense :oops:
$1 est bien égal ([A-Za-z_-]+) (le 1er à gauche) et $3 = ([0-9]*) et j'aurais $2 ça serais égal à ([A-Za-z_-]+) du milieu ?
:( :?:

Vap
WRInaute passionné
WRInaute passionné
 
Messages: 1090
Inscription: 17 Juin 2007

Message le Jeu Aoû 07, 2008 9:56

La aussi tu autorise le tiret dans $1 et $2, donc c'est ambigu. Essaie en enlevant les tirets :

Code: Tout sélectionner
RewriteRule ^([A-Za-z]+)-([A-Za-z]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$3 [L]

mark_h
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 9
Inscription: 9 Mar 2007

Message le Jeu Aoû 07, 2008 17:43

Bonsoir Vap,
après avoir supprimé les "-" de la règle et dans mes noms de fichier ' j'ai remplacé par "_") ça vas un peut mieux :D

Code: Tout sélectionner

Options +FollowSymlinks
RewriteEngine on
RewriteRule index\.html$ index.html [L]
RewriteRule ^([A-Za-z]+)\.html$ realestate.php?pag=$1 [L]
RewriteRule ^([A-Za-z]+)-([A-Za-z-]+)\.html$ /realestate.php?pag=$1 [L]
RewriteRule ^([A-Za-z]+)-([A-Za-z-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$3 [L]
RewriteRule ^([A-Za-z]+)-([0-9]*)\.html$ /realestate.php?pag=$1&confirm=$2 [L]



mais, j'ai toujours le pb de cette règle:


Code: Tout sélectionner

RewriteRule ^([A-Za-z]+)-([A-Za-z-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_fiche=$3 [L]



je comprend pas bien comment faire pour quelle soit différente de:

Code: Tout sélectionner

RewriteRule ^([A-Za-z]+)-([A-Za-z-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$3 [L]



:?

Vap
WRInaute passionné
WRInaute passionné
 
Messages: 1090
Inscription: 17 Juin 2007

Message le Jeu Aoû 07, 2008 22:07

mark_h a écrit:mais, j'ai toujours le pb de cette règle:


Code: Tout sélectionner

RewriteRule ^([A-Za-z]+)-([A-Za-z-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_fiche=$3 [L]



je comprend pas bien comment faire pour quelle soit différente de:

Code: Tout sélectionner

RewriteRule ^([A-Za-z]+)-([A-Za-z-]+)-([0-9]*)\.html$ /realestate.php?pag=$1&id_select=$3 [L]



:?


Je ne sais pas non plus, car tu as mis les mêmes conditions. Il faut que tu choisisse une façon de distinguer tes URL selon qu'elles correspdonent a un cas ou a l'autre. Tant que tu utilise des U>RL qui ont exactement la même structure tu ne pourra pas les distinguer.

Tu peux peut etre distinguer les deux cas en PHP, et supprimer une des dexu règles. A toi de vori ce qui est le plus pratique.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

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