Autor Zpráva
waran
Profil
Zdravím,
narazil jsem na následující problém s .htaccess a nevím, jak ho vyřešit:

Mám subdoménu, jejíž soubory jsou v adresáři /subdom/subdomena. V .htaccess je určována takto:

RewriteCond %{HTTP_HOST} ^subdomena.domena.cz$
RewriteCond %{REQUEST_URI} !^/subdom/subdomena/
RewriteRule (.*) /subdom/subdomena/$1 [L]

Zde však chci použít universální obecné pravidlo, tj. že pokud je zadán požadavek na adresu subdomena.domena.cz/STRANKA, aby bylo podstrčeno /subdom/subdomena/STRANKA, pokud soubor (v takovémto umístění) existuje a /subdom/subdomena/index.php?p=STRANKA pokud soubor neexistuje.

V .htaccess se moc neorientuji, takže bych byl velmi vděčný za jakoukoli funkční radu. :)

Díky
Kajman
Profil
Nový soubor .htaccess s univerzálním pravidlem si dejte do adresáře /subdom/subdomena/
waran
Profil
Kajman:
Po tomto kroku mě to už háže na 404ku definovanou v /subdom/subdomena/.htaccess, universální pravidlo se ale neprovede.

Zkoušel jsem toto:
ErrorDocument 404 http://subdomena.domena.cz/404
ErrorDocument 403 http://subdomena.domena.cz/403

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)$ /index.php?p=$1&d=$2 [L,QSA]

i toto:
ErrorDocument 404 http://subdomena.domena.cz/404
ErrorDocument 403 http://subdomena.domena.cz/403

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)$ /subdom/subdomena/?p=$1&d=$2 [L,QSA]

Asi dělám někde chybu, ale neznám .htaccess dostatečně na to, abych ji objevil...
Kajman
Profil
V pravidle na řádku 7 vyžadujete v adrese lomítko, které v příkladu subdomena.domena.cz/STRANKA není, pravidlo se tedy neaplikuje. Zkuste to obecné pravidlo z FAQ.
waran
Profil
Kajman:
Už to funguje. Díky.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: