.htaccess pro veřejný adresář

Marek

.htaccess pro veřejný adresář
« kdy: 23. 08. 2013, 11:36:32 »
Zdravím,
na úvod musím říct, že jsem prošel spoustu návodů a už použitých věcí, ale výsledku jsem se nikdy nedohledal.
Moje představa je taková je mám adresářovou strukturu např:
Kód: [Vybrat]
+application/
+system/
+public/
--+application/
-----index.html
--+images/
-----image.png
index.php
.htaccess
tohle celé bude například v adresáři web, takže to bude z vnějšku dostupně např přes adresu http://localhost/web
Moje představa je taková, že při jakémkoliv požadavku se, pokud existuje, "podstrčí" soubor z adresáře /public/
Takže pokud zadám adresu http://localhost/web/application/ zobrazí se mi index.html z adresáře public/application/ a né obsah adresáře application/, stejně tak do zbylých adresářů ve složce web/ by z venku nebyl přístup, pokud by soubor nebyl nalezen, pak by se podstrčil index.php z adresáře web.
Je něco podobného možné udělat pomocí (jediného) souboru .htaccess?
Následující kód určitě nefunguje, je to jen nástin toho jak si to zhruba představuju:
Kód: [Vybrat]
RewriteEngine On
RewriteBase /web

RewriteCond public/%{REQUEST_FILENAME} !-f
RewriteCond public/%{REQUEST_FILENAME} !-d
RewriteRule (.*) public/$1 [L]

RewriteRule (.*) index.php?$1 [L]
Za každý myšlenkový pochod nebo mé nasměrování děkuji.


student

Re:.htaccess pro veřejný adresář
« Odpověď #1 kdy: 24. 08. 2013, 13:25:47 »
Myslis nieco ako toto? Ak nie, tak specifikuj, v com to nevyhovuje (v texte som velmi nerozumel tomu, co presne chces kam presmerovavat).
Kód: [Vybrat]
RewriteEngine On

RewriteRule ^web/(.*)$ public/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^public/(.*)$ public/index.php?file=$1 [L]