[rew] je dois changer tous mes liens ?

Nouveau WRInaute
bonjour
1)j'ai réussi à intégrer l'url rewritting dans mon site
RewriteRule index.(.*)\.html$ /index.php?page=$1 [L]
maintenant, je dois changer tous mes liens à l'intérieur de mon site ?
j'ai trouvé un script de ce genre pour ne pas devoir changer tous mes liens (script php qui fait l'inverse de l'url rewritting) :
function lienurlrewriting($url) {
if (eregi("(.*).php(.*)",$url,$regs)) {
$monurl = $regs[1];
$geturl = $regs[2];
while (eregi("(.*)(\?|&)([^=]+)=([^=]*)(.*)",$geturl,$regs)) {
$geturl = $regs[1]."-".$regs[3]."-".$regs[4].$regs[5];
}
$url = $monurl.$geturl;
} elseif(eregi("(.*).php",$url,$regs)) {
$url = $regs[1];
}
return $url.".html";
}
lié à
RewriteEngine on
RewriteRule (.*)(-.+)-([^-]+)-([^-&]*)([^-]*)\.html $1$2&$3=$4$5\.html [N]
RewriteRule (.*)-([^-]+)-([^-]*)(.*)\.html $1.php?$2=$3$4 [L]
RewriteRule ^(.*).html $1.php [L]
je comprends pas bien la syntaxe. comment l'adapter à ma version ?

2)Dans mon url rewritting, y'a la page "index" qui apparait. comment faire pour qu'elle n'apparaisse plus (avoir "*.html" et non "index.*.html").

merci.
 
Olivier Duffez (admin)
Membre du personnel
oui, tu dois changer tous tes liens sur ton site, pour utiliser désormais ton nouveau format d'URL
 
WRInaute occasionnel
Tu peux utiliser ce code :
Code:
RewriteRule (.*)\.html$ /index.php?page=$1 [L]
et cette fonction par laquelle tu fais passer toutes les urls internes que tu affiches sur ton site :
Code:
function lienurlrewriting($url) {
	if (eregi("^(.*)index.php\?page=(.*)",$url,$regs)) {
		return $reg[1].$regs[2].".html";
	} else {
		return $url;
	}
}

Mais fais attention, si tu as des vraies pages .html sur ton site, en enlevant le "index", elles seront rewritées aussi et ça risque de provoquer des erreurs, si tu n'as pas de pages en .html alors il n'y a pas de problème.
 
WRInaute passionné
comment adapté ce script avec mon .htacess ?

le voici



RewriteRule ^forumlire-([0-9]+)-([0-9]+)\.html$ forum_viewtopic.php?$1.$2 [L]
RewriteRule ^forum-([0-9]+)\.html$ forum_viewforum.php?$1 [L]
RewriteRule ^articles-([0-9]+)\.html$ content.php?article.$1 [L]
RewriteRule ^categorie-([0-9]+)\.html$ content.php?article.cat.$1 [L]

Merci beucoup

il faut l'integrer de les 4 pages php concerné ce script , a la fin ?

un gros merci
 
Discussions similaires
Haut