Hei. Minulla on ongelmanaa htaccess tiedoston toiminnan kanssan, tai ennemminkin sen toimimattomuuden kanssa.
Minulla on php tiedosto data.php
<?php print_r($_GET); ?>
ja .htaccess tiedosto
RewriteEngine on RewriteRule ^data/([0-9]+)$ data.php?id=$1 [L] RewriteRule ^data2/([0-9]+)$ data.php?id=$1 [L]
kun lataan sivun http://server.local/data2/1
niin ohjelma tulostaa kuten pitääkin
GET:Array ( [id] => 1 )
mutta jos lataan sivun http://server.local/data/1
niin .htaccess ei vaikutakkaan, vaan data.php ladataan suoraan, jolloin id arvoi ei välity niin kuin pitäisi.
GET:Array ( )
Onko mitään ideaa missä mahtaa olla vika ja miten korjata. Tiedostoja on useita kymmeniä, joita pitäisi muuttaa jos htaccess tiedostoa ei saa toimimaan.
Voisi joka tapauksessa olla järkevintä ottaa palvelimen asetuksista pois tuo omituinen toiminto, joka sallii .php-tiedostojen hakemisen ilman .php-päätettä, jos vain palvelin on omasi etkä erityisesti tarvitse ominaisuutta. Itse ongelmaan en valitettavasti tiedä (muuta) ratkaisua; kaiken järjen mukaan tuon pitäisi kyllä toimia noin.
mikähän kyseinen asetus mahtaisi olla?
Ongelmana näyttää olevan multiviews: http://httpd.apache.org/docs/2.0/mod/
Kiitokset Nikolle, homma selvisi.
.htaccess tiedostoon Options -MultiViews ja homma lähti pelittämään. Vielä pitää etsiä missä tuo on määritelty päälle, että saan koko apachesta pois.
Aihe on jo aika vanha, joten et voi enää vastata siihen.