På en sida jag har, har man kunnat gå tre olika vägar till samma sida och urlerna har sett ut så här.
/product_info.php?cPath=27_35&products_id=56 och
/product_info.php?manufacturers_id=12&products_id=56.
/product_info.php?products_id=56
Nu har jag tagit bort cPath och manufacturers_id på alla länkar som leder till product_info.php?products_id=56. Men sökmotorerna har fortfarande lagrat en del av de gammla urlerna så jag skulle vilja göra en redirect 301 på dem.
Det borde gå att göra med en ifsats typ
if request.QueryString = cPath <>and products_id <> redirect 301 /product_info.php?products_id=request.QueryString products_id
else if
request.QueryString = manufacturers_id <> and products_id <> redirect 301 /product_info.php?products_id=request.QueryString products_id
Men jag har ingen aning hur man skriver det i Php.
Bah nu gör du det igen nitro2k01. Skriver mitt namn med stort c. :p
Det är väl lite hugget som stucket, die (eller exit för den delen) genererar en connection close. Jag föredrar dock att använda header så jag har koll på vilka huvuden som faktiskt skrivs ut.
Skälet till att man använder det där är för att IE har en tendens att strula om man inte skickar med Connection: close, antingen via die, exit eller header.
Jag brukar använda die eller exit när jag vill skriva ut något mer.
Varför jag tycker att man ska använda die eller dylikt är för att jag är orolig att skripet inte slutar köras direkt om man bara skickar Connection: close
Det kanske är en obefogad oro?
Och så har jag redigerat ditt namn. Jag fick för mig att ditt namn enligt konvention skulle stavas med stor bokstav i början av en mening, sorry.
Jo din oro stämmer, scriptet fortsätter köras om man inte kastar in en die eller exit. Om man har kod som kan exekveras efter en if-sats som redirectar bör man använda det. I detta fallet verkar det ju vara så :).
Nytt exempel:
if ( ( isset($_GET['cPath']) || isset($_GET['manufacturers_id']) ) && isset($_GET['products_id']) ) {
header("HTTP/1.1 301 Moved Permanently");
header("Location: /product_info.php?products_id=".$_GET['products_id']);
exit();
}
270 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e