Podivné chování htaccess při přesměrování do www
- Caine
- Člen | 216
Zdravím, narazil jsem na podivné chování u htaccessu. Chci si přesunout
index.php o úroveň víš, ale narazil jsem na zvláštní problém. Web mám
na i:\xampp\htdocs\www\pokus2.0\
a ve vhosts:
<VirtualHost *:80>
DocumentRoot "i:/xampp/htdocs/www/pokus2.0/"
ServerName pokus2.local
ErrorLog "logs/pokus2-error.log"
CustomLog "logs/pokus2-access.log" combined
</VirtualHost>
htaccess pak:
RewriteEngine On
#RewriteBase /
# front controller
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.(pdf|js|ico|gif|jpg|png|css|rar|zip|tar\.gz)$ index.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*\.(txt|pdf|js|ico|gif|jpg|png|css|rar|zip|tar\.gz))$ www/$1 [L]
Problém je, že žádný css, js, atd to nenajde a hazí to 404
(nenalezeno). Např když se snažím přistoupit k
http://pokus2.local/css/style.css
a pak se podívám do error logu,
najdu tam „File does not exist: I:/xampp/htdocs/www/css
“, tedy
že se to snaží přistupovat do špatné složky a i když jsem zkoušel
upravit výstupní cestu na /www/pokus2.0/www/$1
nebo podobně
rewritebase, pořád to dělalo to samé (snaha o přístup do
I:/xampp/htdocs/www/css
). Pokud ale www složku přejmenuju na
např public (public/$1
), tak to funguje správně. Nevíte, co by
moh být za problém?
Editoval Caine (29. 1. 2012 15:58)