[URL REWRITING] Incohérence avec le fichier index ?

Règles du forum
Attention ce forum est destiné avant tout à ceux qui découvrent le référencement. Les membres qui auront l'amabilité de répondre à leurs questions sont priés de rester courtois, polis, indulgents, patients et pédagogues... Merci d'avance !

Par ailleurs, inutile d'utiliser ce forum uniquement pour obtenir des liens vers vos sites, les liens sont désactivés pour le référencement (nofollow).

Consultez la formation au REFERENCEMENT naturel Google de WebRankInfo / Ranking Metrics


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2215
Inscription: 10 Avr 2005

[URL REWRITING] Incohérence avec le fichier index ?

Message le Dim Jan 25, 2009 18:40

Bonjour,

Pourquoi cette règle fonctionne.
Code: Tout sélectionner
RewriteRule (.*)index\.php$ /$1 [R=301,L]

http://www.example.com/index.php renvoie vers http://www.example.com
C'est à dire que si http://www.example.com est appelé Apache passe outre cette règle.


En revanche, si l'on écrit la règle suivante pour capturer tout ce qui pourrait exister comme appel de page ou de dossier.
Code: Tout sélectionner
RewriteRule (.+) / [L]

Apache plante avec Internal Server Error.
Parce qu'il doit tourner en boucle étant donné que la redirection vers / appelle pour lui index.php


Hors si index.php semble être appelé dans ce cas, pourquoi le 1er exemple ne tourne pas en boucle non plus ?

J'espère avoir été suffisamment clair.

Ou est la logique ?

Merci


HawkEye
WRInaute accro
WRInaute accro
 
Messages: 17013
Inscription: 23 Fév 2004

Re: [URL REWRITING] Incohérence avec le fichier index ?

Message le Lun Jan 26, 2009 10:11

Ce n'est pas une question de fichier appelé, mais d'URI affiché.

Dans le premier cas, tu demandes à ce que tout ce qui se termine par "index.php" soit redirigé (R=301) vers le même URI, sans index.php.

Exemple:

/index.php -> / [ton test]
mais aussi
/anythingindex.php -> /anything
/dossier/sous-dossier/index.php --> /dossier/sous-dossier/

Le second ne redirige pas: il réécrit.

Je suppose que ton objectif est de gérer la réécriture via index.php (donc par l'identification de $_SERVER['REQUEST_URI']) ?
Tu dois à mon avis le présenter comme ceci:

Code: Tout sélectionner
RewriteRule (.+) /index.php [L]


--> et c'est dans index.php que tu vas définir que si l'URI est "index.php", il faut rediriger vers la racine.


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2215
Inscription: 10 Avr 2005

Re: [URL REWRITING] Incohérence avec le fichier index ?

Message le Lun Jan 26, 2009 13:53

HawkEye a écrit:Tu dois à mon avis le présenter comme ceci:

Code: Tout sélectionner
RewriteRule (.+) /index.php [L]


--> et c'est dans index.php que tu vas définir que si l'URI est "index.php", il faut rediriger vers la racine.


Pas mieux, voici la réponse de Firefox.
Firefox a détecté que le serveur redirige la demande pour cette adresse d'une manière qui n'aboutira pas.


La solution je l'ai :

Code: Tout sélectionner
RewriteEngine on

RewriteRule (.*)index\.php$ /membre/$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !index.php
RewriteRule .+ /membre/ [L]

Mais ma question reste la même, si index.php semble être appelé dans la seconde règle, pourquoi la 1ere règle ne tourne pas en boucle non plus ?

Merci


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2215
Inscription: 10 Avr 2005

Re: [URL REWRITING] Incohérence avec le fichier index ?

Message le Mar Jan 27, 2009 21:01

En fait la question est encore plus simple que ça.

Pourquoi cette règle renvoie "Internal Server Error" quand j'appelle http://www.example.com/membre/ ?

Code: Tout sélectionner
RewriteRule .+ /membre/ [L]

Le .htaccess est dans membre.
La règle ne capture donc rien, aucun caractère.
Ce qui ne correspond pas à .+ (au moins un caractère).


Et c'est à ce niveau qu'il ne faut pas me répondre qu'Apache appelle index.php :) sinon cf règle 1.


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2215
Inscription: 10 Avr 2005

Re: [URL REWRITING] Incohérence avec le fichier index ?

Message le Jeu Jan 29, 2009 11:53

Up svp ?


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 REFERENCEMENT naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... 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 :

Consultez la description détaillée des produits ou services de Google suivants : Google goo.gl

  • Analyse de popularité
    Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées.
  • Transformer des simples citations de votre site en liens
    Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).


Qui est en ligne

Utilisateurs parcourant ce forum: Google [Bot] et 1 invité