Url Rewrite Optimisation

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

Yon-hee
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 2
Inscription: 25 Avr 2008

Url Rewrite Optimisation

Message le Ven Avr 25, 2008 21:19

Bonjour,

Infos : hebergeur ovh

J'ai créer la une regle de rewrite suivante :

url de base :
http://monsite.com/index.php?page=18

.htaccess :
RewriteEngine On
RewriteRule ^lettre\.html$ /index.php?page=18 [L]

New Url:
http://monsite.com/lettre.html

Jusque là tout va bien :)

Les problemes :
1)
je souhaiterais que lorsque l'on met nimporte quel caractere apres le .html la dite page n'apparaisse pas ou soit redirigé vers une autre page.
par exemple la page suivante http://monsite.com/lettre.html_=coucoublabla est identique à http://monsite.com/lettre.html

2)
je souhaiterais que l'url de base ne soit pas possible d'acces.
ex : http://monsite.com/index.php?page=18 affiche une page derreur ou soit redirigé.

Cordialement,
Yon-Hee:

tonguide
WRInaute passionné
WRInaute passionné
 
Messages: 1393
Inscription: 28 Nov 2003

Message le Sam Avr 26, 2008 0:04

Pour le 1) théoriquement, ça doit te retourner une erreur 404, donc ça doit logiquement déjà être le cas.

Pour le 2) rajoutes un paramètres dans ta règle
Du genre :

RewriteRule ^lettre\.html$ /index.php?page=18&rewrite=1 [L]

Et dans ta page index.php

Tu fais un truc du genre :

<?php
if (!isset($_GET['rewrite']))
{
// redirection (en 301, tu trouveras la syntaxe sur le forum)
// vers la page lettre.html
}
?>

tonguide
WRInaute passionné
WRInaute passionné
 
Messages: 1393
Inscription: 28 Nov 2003

Message le Sam Avr 26, 2008 0:07

PS : si jamais tu as pas déjà une erreur 404

tu fais :

RewriteRule ^lettre\.html(.*)$ /index.php?page=18&erreur=$1 [L]

Et si $_GET['erreur'] n'est pas vide, tu rediriges vers la bonne page.

Yon-hee
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 2
Inscription: 25 Avr 2008

=)

Message le Sam Avr 26, 2008 8:31

Bonjour,

Merci beaucoup de vos reponses.

Malheureusement cela ne marche pas pour le premier pb.

Avec cela : RewriteRule ^lettre\.html(.*)$ /index.php?page=18&erreur=$1 [L]
mes pages du genre http://monsite.com/letre.htmlfhfeihfluqrf s'affiche toujours
:oops:


pour le second je vais passer par linterface de Ovh pour le faire.

Merci.
Cordialement,

tonguide
WRInaute passionné
WRInaute passionné
 
Messages: 1393
Inscription: 28 Nov 2003

Message le Sam Avr 26, 2008 13:19

"Et si $_GET['erreur'] n'est pas vide, tu rediriges vers la bonne page."

Elle est bien sensé s'afficher, à toi de rediriger selon $_GET['erreur']


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