Voisko joku auttaa en saa millään toimimaan ModRewriteä serverimaailma.fi hotellissa. Tuki on ja .htaccess tiedosto on tehty ja toimii tällä ohjeella:
http://www.wallpaperama.com/forums/how-to-test-check-if-mod-rewrite-is-enabled-t40.html
Sivuni ovat:
http://www.timelessfields.net
joka uudelleenohjautuu /suomi/index.php kansioon.
koodi: header( 'Location: http://www.timelessfields.net/suomi' ) ;
Pitäisi saada silleen että tuo index.php poistuu samoin kuin:
http://www.patricktaylor.com/mod_rewrite-hideindex
ohjeen mukaan.
Olen koittanut useita tunteja mutta mikään säätö ei näytä toimivan, myös kokeillut erillaisia modrewrite generatoreita.
http://www.timelessfields.net/suomi/index.php?sivu=news
pitäisi siis saada muotoon:
http://www.timelessfields.net/suomi/news
tai vastaavasti.
Tässä on index.php sivun koodi:
<?php ob_start(); $browser = $_SERVER['HTTP_USER_AGENT']; $sivu=$_GET['sivu']; switch($sivu){ default: $inc = "news.php"; break; case "links": $inc = "links.php"; break; case "ari": $inc = "ari.php"; break; case "band": $inc = "band.php"; break; case "jake": $inc = "jake.php"; break; case "kristian": $inc = "kristian.php"; break; case "disco": $inc = "disco.php"; break; case "history": $inc = "history.php"; break; case "vbg": $inc = "guestbook.php"; break; case "light": $inc = "light.php"; break; case "darkness": $inc = "darkness.php"; break; case "arvostelut": $inc = "arvostelut.php"; break; } if(file_exists($inc)){ include $inc; } else{ include('huolto.php'); } ob_end_flush(); ?>
Kutsun linkkejä näin:
<a href="index.php?sivu=news" id="uutiset">
.htaccess tiedoston olen filezilla pistänyt pää juureen sekä yrittänyt myös /suomi kansiossa. Vaikka mitä säätää koskaan ei lyhene osoite.
Kiitän avusta!
Mod. lisäsi kooditagit
risingforce kirjoitti:
http://www.timelessfields.net/suomi/index.php?
sivu=news
pitäisi siis saada muotoon:
http://www.timelessfields.net/suomi/news
tai vastaavasti.
Tämän pitäisi toimia:
RewriteEngine on RewriteBase / RewriteRule ^suomi/([^/\.]+)/?$ suomi/index.php?sivu=$1
-tossu- kirjoitti:
Tämän pitäisi toimia:
RewriteEngine on RewriteBase / RewriteRule ^suomi/([^/\.]+)/?$ suomi/index.php?sivu=$1
Koittelin tuota koodia juureen sekä /suomi kansion juureen mutta ei tapahtunut mitään. Täältä löytyy tuo phpinfo tiedosto http://www.timelessfields.net/phpinfo.php
Mitään merkittävää en löytänyt mikä tuon ReWriten toimimattomuuden voisi aiheuttaa. Alkaa olla aika juminen juttu onkohan jossain CASE määrityksessä vikaa?, vaikka tuntuis nuo sivut muuten toimivan.
Yksi vika ainakin on siinä, että itse tulostat linkkiin väärän osoitteen. Rewrite ei muuta linkkejä tai selaimen toimintaa mitenkään, vaan se vain kertoo palvelimelle, että kun joku pyytää sivua /sivut/moi, annetaankin sen sijaan /sivut/index.php?sivu=moi. Tämä siis tapahtuu vain ja ainoastaan palvelimella ja jo ennen PHP-skriptin ajamista.
Metabolix kirjoitti:
...
Tuo valaisi asiaa, hieno homma että ihmiset viitsivät auttaa!
Kiitän!
Aihe on jo aika vanha, joten et voi enää vastata siihen.