Mam plik .htaccess, który mapuje .htaccess przepisać łamie ścieżek względnych
http://www.myserver.com/home/do
http://www.myserver.com/index.php?section=home
Ta część działa prawidłowo. Problem jestem stoi teraz to, że wszystkie moje obrazy i css rezydować w podkatalogu o nazwie aktywów, tj
http://www.myserver.com/assets/images/
http://www.myserver.com/assets/css/itp
Po przekierowaniu przeglądarka będzie szukać plików pod
http://www.myserver.com/home/assets/images/co powoduje rzeczy do złamania, jak nie jest to poprawna ścieżka.
I udało się dodać kolejną przeróbkę, która mapuje powyższe do właściwego podkatalogu jednak Firebug pokazuje, że obrazy są zamieszkały w:
http://www.myserver.com/home/assets/images/
wiem, że to naprawdę nie jest problem, mimo wszystko, moje obrazy i css ładują się dobrze z tą regułą. Jestem po prostu ciekawa, w jaki sposób mogę uczynić ścieżkę pokazaną jako rzeczywistą ścieżkę, która jest:
http://www.myserver.com/assets/images/
Wklejanie mojego pliku htaccess poniżej. Bardzo dziękuję z góry.
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^([^/]+)/assets/(css|images|js)/(.*)$ /assets/$2/$3 [NC,L]
RewriteRule ^([^/]+)/$ /index.php?section=$1 [NC,L]
starałem, aby nie trzeba iść ścieżką konwersji wszystkich moich ścieżek względnych na bezwzględne, ale niestety, ja może teraz trzeba. Z drugiej strony zupełnie zapomniałem o tagu
! To działało jak urok. Dzięki Gumbo, doceń to. – irot@irot: Ponownie, zauważ, że zmiana podstawowego URI przy użyciu 'BASE' wpływa na * wszystkie * względne URI, a nie tylko te ze względnymi ścieżkami. – Gumbo
Wpływa również na znaczniki zakotwiczenia z skrótami. Każdy znacznik zakotwiczenia z atrybutem href, takim jak "#content", rozwiąże podstawowy adres URL, a nie bieżącą stronę. – VirtuosiMedia