Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: mod rewrite i szablony
Forum PHP.pl > Forum > Serwery WWW > Apache
mma
Otóż taki dziwny problem mi sie pojawił.
mam stronę index.php i do niej podwany jest parametr route, który może wyglądać następująco
route=pl/cos/cos/cos/itd

Na stronie zastosowany jest prosty system szablonowania, gdzie pobierany jest plik i wyswietlany
  1. <?php
  2.  include($this->_template_path.$file);
  3.  $content = ob_get_contents(); 
  4.  return $content;
  5. ?>


Tak wyglada plik htaccess

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?route=$1 [L,QSA]


Wszystko działa dobrze dla wpisów bez mod rewrite, czyli jak mam adres.com/index.php?route=pl/cos/cos
w przeciwnym wypadku gdy podamy np. adres.com/cos/cos
Wyświetlana jest zawartośc strony ale bez zawartości zewnętrznego pliku css :/
problem również nie występuje przy podaniu jednego parametru za adresem np. adres.com/cos (ale adres.com/cos/ juz nie dziala)
Nie wiem czy jest to problem z apaczem czy php czy tez ze mna sciana.gif
Ale nie umiem sobie z tym poradzic poki co.
webdice
Bo przeglądarka niepoprawnie odczytuje ścieżkę do pliku css. Zamiast:

Kod
www.adres.pl/style.css


odczytuje:

Kod
www.adres.pl/cos/style.css


Rozwiązać to możesz podając do plików css oraz obrazków ścieżki bezwzględne, użyć base href, zmienić shlashe na przecinki.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.