ugrás a tartalomhoz

mod_rewrite /-jel probléma

Fraki · 2007. Május. 29. (K), 20.14
Szerencsére nagyon egyszerűen leírható a nagyon idegesítő problémám. Nem működik ez:

RewriteRule (.*) /index.html [L]

Perjel nélkül működik, de ennek perjellel is működnie kéne. Minden más szerveremen működik perjellel, fogalmam sincs, az egyiken miért nem, 500-as hibát ad vissza.

A probléma egyébként az egyik melléktünete egy másik problémának. Virtual hostokat akarok kezelni htaccess-ből: (a 4. sor csak debug, ahhoz nyilván a 3. sort kikommentelem)

RewriteCond %{HTTP_HOST}   !^www\.domain.hu$
RewriteCond %{HTTP_HOST}   ^([\w-]+)\.domain.hu$
RewriteRule (.*)           vsubdomains/%1/htdocs/$1 [L]
RewriteRule (.*)           vsubdomains/%1/htdocs/index2.php?b=$1 [L,QSA]


A 4. sor úgy működik, ahogy kell: a $1-ben megkapom a hoston belüli elérési utat (érdekes módon QSA paraméter nélkül a fizikai utat adja át benne, méghozzá a végén az index2.php-val).

A 3. sor kéne nekem, viszont nem működik! Akkor se, ha a QSA-paramétert megadom. 500-as hibát ad. Másik szerveremen ez normálisan működik úgy, hogy a vsubdomains előtt perjel van (itt úgy megintcsak 500-as hiba lesz), és természetesen nem kell a QSA, elég az L.

Mitől lehet ez? DocumentRoot-tal nem lehet gond. Esetleg az, hogy a NameVirtualHost nem név alapú (*:80), hanem ip-alapú (xxx.xxx.xxx.xxx:80)? Dehát a kérés rendben befut a docrootba, hiszen a htaccess lefut!
 
1

hogy nekem mennyi eszem van...

Fraki · 2007. Május. 29. (K), 21.32
Most jöttem rá, hogy hiányzik még egy feltétel...

RewriteCond %{REQUEST_URI} !^/vsubdomains/


Na pedig rájöhettem volna, mert már az errorlogot böngésztem debug loglevel-en, és láttam, hogy végtelen ciklusba kerül.

Csakhogy emlékszem, hogy kivettem azt a rohadt perjelet ez elől a vsubdomains elől, mondván, minek az, bahh...

Ennyi voltam, köszi mindenkinek:)
2

:]

gex · 2007. Május. 29. (K), 22.06
jó olvasni a témáid... ;]