ugrás a tartalomhoz

mod_rewrite - barátságos url-ek front controllerre irányítása

csla · 2011. Okt. 26. (Sze), 09.25
Sziasztok!

Az alábbi kódot használom a barátságos URL-ekhez a weboldalaimnál.

<IfModule mod_rewrite.c>

  RewriteEngine on

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php?uri=$1 [QSA]

</IfModule>


Most egy helyen (500-as) hibára futottam vele.
A segítségkérésre az alábbi szimpatikus választ kaptam a szerver üzemeltetőjétől.

Mi csak üzemeltetők vagyunk és nem webfejlesztők!
Tehát a megfelelő paraméterek ismeretében, amit egy webfejlesztőnek tudnia kellene, hogy hogyan is kell azt lekérdezni, kell elkészíteni a jelenlegi is rosszul elkészített ".htaccess" file-t !


Segítenétek, hogy mit kellene tudnom? (Lehet, hogy elhaladt e felett az idő, csak nem vettem észre, mert eddig nem volt vele gond sehol.)
Köszönöm előre is.
 
1

Mi a probléma

janoszen · 2011. Okt. 26. (Sze), 09.38
Nem egészen értem, mi a probléma? Mit szeretnél elérni?

Egyébként a szerver üzemeltetőnek igaza van, az alkalmazást Te írod és ehhez tartozik a .htaccess file is.
2

Azt szeretném elérni, hogy ha

csla · 2011. Okt. 26. (Sze), 09.46
Azt szeretném elérni, hogy ha beírom, hogy "http://valami.hu/jancsika", akkor ez a kérés az index.php-hoz jusson, úgy, hogy "index.php?uri=jancsika", mint ahogy ezt el is értem eddig ezzel a kóddal, minden eddigi oldalnál, minden szerveren - amelyiken korábban használtam - rendben működött.

Ezen a helyen viszont nem működik, hanem egy 500-as hibaüzenetet kapok a szervertől. Ezért kértem segítséget az üzemeltetőtől.

Természetesen elfogadom, ha arról van szó, hogy valami hiba van benne, csak valamiért mégis elfutott az eddigi helyeken, de sajnos nem látom, hogy mi az.
3

Kapcsold be a rewrite logot,

Hidvégi Gábor · 2011. Okt. 26. (Sze), 09.49
Kapcsold be a rewrite logot, a loglevelt állítsd magasra, mondjuk 6-ra, így a logból ki tudod deríteni, pontosan mi is történik.
4

IndexIgnore?

csla · 2011. Okt. 26. (Sze), 10.31
Van a htaccess-ben előtte egy "IndexIgnore *" sor.
Próbaképpen kivettem, így működik.

Nem tudtam, hogy hatással van a rewrite modulra.
Ez milyen beállítástól függ? Próbáltam keresni - már csak kíváncsiságból is - de nem találtam erre utaló leírást, legalábbis olyat, ami nekem szembeötlő lett volna.
5

Ez milyen beállítástól

kuka · 2011. Okt. 26. (Sze), 10.44
Ez milyen beállítástól függ?
Én AllowOverride-ra szavazok. A mod_rewrite direktíváinak FileInfora van szükségük, az IndexIgnore-nak pedig Indexesre. Ha az utóbbi nincs engedélyezve, akkor az IndexIgnore 500-as hibával kiakasztja és a mod_rewrite-os részhez már el sem ér.
6

Jaj...

csla · 2011. Okt. 26. (Sze), 10.58
Ó, köszönöm! Most már leesett, hogy az egésznek semmi köze a rewrite-hoz. Annyira a rewrite-ra koncentráltam...