ré-écrire tous les liens en interne ?

Nouveau WRInaute
Bonjour,

Je viens de créer mon fichier .htaccess. Ma ré-écriture d'url se passe bien.

N'y a-t-il pas une autre solution que de remplacer tous mes liens en interne avec mes nouveaux liens ré-écris ?
Etant donné que j'ai pas mal de lien interne. Il va falloir que je les ré-écrive tous?

Que se passe-t-il si je n'appelle pas tous mes liens par leurs nouveaux noms?

MERCI beaucoup.
 
WRInaute passionné
Ca va faire des liens brisés et des erreurs 404.
Je vois pas comment tu peux faire autrement que de te lancer dans une bonne séance de manutention informatique et si quelqu'un sait, je suis preneur aussi.
 
Nouveau WRInaute
Meeuuuhhh a dit:
Ca va faire des liens brisés et des erreurs 404.

Je vois pas comment cela ferait des erreurs 404 ou des liens brisés puisque lorque je teste mes 2 liens (une rewritée et l'autre non-rewritée) les 2 fonctionnent!
www.monsite.com/contact.htm
marche aussi bien que
www.monsite.com/index.php?p=contact

Ou y'a t-il un truc que j'ai saisi?

Cela dit s'il n'y pas de solution afin d'éviter la réécrire tous les liens en internes par l'url rewritée, je ne vois pas comment cela est gérable avec des sites gérés avec une bdd ou il y a plus de 100 pages...
 
WRInaute accro
En effet tu n'auras pas de lien brisé, l'URL non réécrite étant interprétée par le serveur aussi bien que l'url réécrite.

Par contre, oui il faut modifier tous les liens présents dans ton site, sinon en effet ça ne sert à rien.

Il tre faudra également indiquer aux moteurs de recherche des redirections 301 des anciennes URL vers les nouvelles, sinon il te les comptera en double pendant un bon bout de temps.
 
Nouveau WRInaute
Les requetes et boucle

Pour les site qui ont beaucoup de page normalement, si c'est un catalogue de produits, des news ou des post de forum les liens sont généré par une requete et une boucle.

Donc fait écrire tes liens rewrité par ta boucle.

Exemple.:

Code original:

Code:
	<?
	include("config.php");  
	mysql_connect($host,$login,$password) or die("Impossible de connecter la bd");
	$base=mysql_select_db($db) or die("erreur de DB");
	$sql1=mysql_query("select * from sections order by ord_affiche asc") or die("Impossible d'ouvrir la table");
	while($row1=mysql_fetch_array($sql1))
	{
	echo "<tr>\n";
	echo "<td WIDTH=\"20\" bgcolor=\"#7998C4\"><IMG SRC=\"images/puce.jpg\" WIDTH=\"20\" HEIGHT=\"8\" BORDER=\"0\" ALT=\"\"></td><td bgcolor=\"#7998C4\"><nobr><a href=\"page.php?id=".$row1["id"]."\" class=\"menu\">".StripSlashes($row1["nom"])."</a></nobr></td>\n";
	echo "</tr>\n";
	}
	?>

Code modifier pour afficher les liens selon le urlrewriting:

Code:
<?
include("config.php");  
	mysql_connect($host,$login,$password) or die("Impossible de connecter la bd");
	$base=mysql_select_db($db) or die("erreur de DB");
	$sql1=mysql_query("select * from sections order by ord_affiche asc") or die("Impossible d'ouvrir la table");
	while($row1=mysql_fetch_array($sql1))
	{
	echo "<tr>\n";
	echo "<td WIDTH=\"20\" bgcolor=\"#7998C4\"><IMG SRC=\"images/puce.jpg\" WIDTH=\"20\" HEIGHT=\"8\" BORDER=\"0\" ALT=\"\"></td><td bgcolor=\"#7998C4\"><nobr><a href=\"page-".$row1["id"].".html\" class=\"menu\">".StripSlashes($row1["nom"])."</a></nobr></td>\n";
	echo "</tr>\n";
	}
?>
 
Nouveau WRInaute
Re: Les requetes et boucle

bonjour,
mon probleme est de comment modifier les liens et j'ai vu sur ce forum la façon de les modifier mais pas pour plusieurs variables
qlq un peut donner un exemple
merci
 
Nouveau WRInaute
Re: Les requetes et boucle

bendou a dit:
bonjour,
mon problème est de comment modifier les liens et j'ai vu sur ce forum la façon de les modifier mais pas pour plusieurs variables
qlq un peut donner un exemple
merci

bonjour, je profite du wagon, pour exposer le même problème et pour ne pas ouvrir un nouveau sujet.
site annuaire avec des liens rewrite et changement de répertoire de l'annuaire avec d'autres rewrite:
quelques exemples:
ancien:
http://www.monsite.com/?module=click&url=http://www.toto.fr ==========>erreur 404
nouveau
RewriteCond %{QUERY_STRING} ^module=([^&]*)click&url=([^&]*)$
RewriteRule ^index\.php$ /index.php?newparam1=%1&newparam2=%2 [R=301,L]

je n'arrive pas à rediriger les anciens liens qui ont 2 ou 3 conditions vers les nouveaux.

c'est certainement très compliqué ou très simple
 
Discussions similaires
Haut