Fabian St.: .htaccess und dynamische Pfade

Beitrag lesen

Hi!

RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+).html$ index.php?datei=$1.html [L]

schreibe, wird die index.php richtig angezeigt. Wenn ich nun aber das Verzeichniss dateien vorgaukeln möchte, werden bilder und externe css nicht mehr dagestellt. Es scheint, als würde die index.php dann im Verzeichniss "dateien" liegen und von dort auf ausgerufen.

Wie mache ich es richtig?

Offenbar stehen in den einzelnen Dateien relative Pfadangaben, die davon ausgehen, dass sich die jeweiligen Ressourcen im gleichen Verzeichnis wie die index.php befinden, was jedoch aufgrund der RewriteRule nicht mehr der Fall ist, da der Apache die aktuelle URL benutzt, um diese relativen Pfadangaben auf absolute abzubilden.

Aus diesem Grund solltest du absolute Pfadangaben benutzen, d.h. statt

  
<img src="img/bild.gif" />  

solltest du

  
<img src="/img/bild.gif" />  

schreiben.

Grüße,
Fabian St.