Hätä ois.
Työn alla on staattinen html-saitti, joka korvaa vanhan Joomlan päälle rakennetun saitin. Generoin siitä xml-sivustokartan, josta sain talteen kaikki linkit, niitä on 12. Nämä 12 linkkiä pitää nyt sitten edelleenohjata uuden sivuston vastaaville sivuille. Googlaamalla löytyi tämä:
Redrirect /vanha/tiedosto.html http://domain.fi/uusi.html
Siispä tein näin:
Redirect /site/ http://www.saitti.fi/index.html Redirect /site/index.php http://www.saitti.fi/index.html Redirect /site/index.php?option=com_frontpage&Itemid=1 http://www.saitti.fi/index.html Redirect /site/index.php?option=com_content&task=section&id=5&Itemid=26 http://www.saitti.fi/dummy-page.html Redirect /site/index.php?option=com_content&task=section&id=6&Itemid=27 http://www.saitti.fi/services-customer-oriented.html Redirect /site/index.php?option=com_contact&Itemid=3 http://www.saitti.fi/contact-informations.html Redirect /site/index.php?option=com_content&task=view&id=45&Itemid=30 http://www.saitti.fi/index.html Redirect /site/index.php?option=com_content&task=view&id=42&Itemid=30 http://www.saitti.fi/index.html Redirect /site/index.php?option=com_content&task=view&id=44&Itemid=30 http://www.saitti.fi/index.html Redirect /site/index.php?option=com_content&task=view&id=12&Itemid=30 http://www.saitti.fi/index.html Redirect /site/index.php?option=com_content&task=category§ionid=4&id=1&Itemid=30 http://www.saitti.fi/index.html
Nää osoitteet on siis suuntaa antavia, mutta idea toiv. selviää. Testatessa ainut mikä toimii on listassa eka. Loppujen kanssa tulee 404 ja osoiterivi näyttää esim tältä:
http://www.saitti.fi/index.htmlindex.php?option=com_frontpage&Itemid=1
Vaikuttaa eri kokeilujen jälkeen siltä, että eka Redirect sotkee seuraavat. Jos sen ottaa pois, taas eka sotkee seuraavat, jne. Onko jokin fiksu tapa edelleenohjata joukko SPESIFEJÄ linkkejä SPESIFEIHIN kohteisiin? Tai olenko missannut jonkin detaljin, jonka avulla tämä toimisi?
Kokeilepa laittaa ohjaukset pituusjärjestykseen niin, että pisimmät ohjataan ensin.
RedirectPermanent olisi ehkä tarkoitukseesi oikeampi kuin pelkkä Redirect.
Auttoi osittain.
Redirect /site/index.php?option=com_content&task=section&id=6&Itemid=27 http://www.saitti.fi/services-customer-oriented.html
Ylläoleva urlin jälkeen osoiterivin url näytti tältä:
http://www.saitti.fi/index.html?option=com_content&task=section&id=6&Itemid=27
Eli redirecti näköjään katsotaan tiedostonimen perusteella, eikä koko URI:n, ts. URI lyödään poikki kysymysmerkin kohdalta. Neuvoja kaivataan edelleen.
Pitäskö tuossa ekassa urlissa escapeta regexp erikoismerkit?
Matso, pelkkä Redirect ei käytä säännöllisiä lausekkeita, niitä varten olisi RedirectMatch.
Ilmeisesti Redirect ei myöskään huomioi kysymysmerkin jälkeistä osaa. Miten olisi sellainen ratkaisu, että hoitaisit uudelleenohjauksen PHP-koodilla tuossa /site/index.php:ssä?
Muuten olisi ok ratkaisu, mutta ei ratkaise sitä probleemaa, että jos surffailija tulee vanhentuneella linkillä sisään, mutta vastaava sivu on olemassa, ei välttämättä mennä index.php:n kautta ensinkään. Tää saitti on nimittäin ihan staattista kamaa, ei PHP:tä lainkaan.
Triskal kirjoitti:
Muuten olisi ok ratkaisu, mutta ei ratkaise sitä probleemaa, että jos surffailija tulee vanhentuneella linkillä sisään, mutta vastaava sivu on olemassa, ei välttämättä mennä index.php:n kautta ensinkään. Tää saitti on nimittäin ihan staattista kamaa, ei PHP:tä lainkaan.
Eihän sinulla uudella saitilla ole index.php:tä lainkaan vai missasinko jotain? Metabolix ehdotti, että kirjotat redirectit vanhalle saitille Joomlan index.php-filun tilalle. Tietty jos PHP ei ole käytettävissä lainkaan, sitten tuo ei onnistu.
Aihe on jo aika vanha, joten et voi enää vastata siihen.