RuD: mod_rewrite: ich dreh noch durch!

Seid gegrüßt!
ich versuche mit:

  
RewriteEngine on  
Options FollowSymLinks  
RewriteBase /__new_gemc/  
  
RewriteRule ^([-0-9a-z]+)/$ index.php?page=$1  
RewriteRule ^([-0-9a-z]+)$ index.php?page=$1  
  
RewriteRule ^([-0-9a-z]+)/([-0-9a-z]+)$ index.php?page=$1&show=$2  
RewriteRule ^([-0-9a-z]+)/([-0-9a-z]+)/$ index.php?page=$1&show=$2  

dabei will ich www.domain.tld/test/test2
in             www.domain.tld/index.php?cat=test&sub=test2 umwandeln.

und            www.domain.tld/test/
soll in        www.domain.tld/index.php?cat=test umgewandelt werden.

Zudem sollen "Schluss-Slashes" auch unterstützt werden.

Doch hier meine Probleme damit:
bei            www.domain.tld werden CSS und Graphiken angezeigt
bei            www.domain.tld/test auch
aber bei       www.domain.tld/test/
               www.domain.tld/test/test2
oder           www.domain.tld/test/test2/ werden die CSS und die Graphiken nicht angezeigt.
CSS liegt direkt im "__new_gemc" und die Graphiken in "__new_gemc/img". Zur Info das "__new_gemc" ist im Moment (zum Testen) das root.

Was passiert durch die Rewrites mit der Bild/CSS-URI? Und wie muss ich die Regeln ändern/ergänzen, um das zu beheben?

--
Bis Später
    
==========================================================
[Testversion meiner Seite]
  1. hi,

    wie hast du die CSS- und Bild-Ressourcen im HTML eingebunden? Relative Pfade, oder in Bezug auf /?

    Was passiert durch die Rewrites mit der Bild/CSS-URI?

    Wenn sie nicht von deinen RewriteRules betroffen sind, dann gar nichts.

    Aber im Browser passiert etwas:
    Der hat das Dokument von /test/test2 oder /test/test2/ angefordert.

    Wenn du darin jetzt eine Ressource einfach relativ als "xyz.css" oder "abc.jpg" eingebunden hast - dann ergänzt der Browser diese natürlich, wie es von ihm erwartet wird, mit dem aktuellen Pafd, unter dem er das Dokument angefordert hat - also
    /test/xyz.css
    /test/abc.jpg
    bei ersterem, Aufruf ohne abschließenden Slash, bzw.
    /test/test2/xyz.css
    /test/test2/abc.jpg
    bei Aufruf mit abschließendem Slash.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. Seid gegrüßt!

      hi,

      wie hast du die CSS- und Bild-Ressourcen im HTML eingebunden? Relative Pfade, oder in Bezug auf /?

      Via <img src="img/bild.jpg"> und <link rel="stylesheet" type="text/css" href="style.css">. Sollte man das umstellen auf www.domain.tld/style.css? Aber eigentlich will ich keine absoluten Pfade. Kann man das irgendwie auch über mod_rewrite regeln?

      Wenn sie nicht von deinen RewriteRules betroffen sind, dann gar nichts.

      Wie schließe ich das aus?

      Aber im Browser passiert etwas:
      Der hat das Dokument von /test/test2 oder /test/test2/ angefordert.

      Alles klar also will er /test/test2/img/bild.jpg - findet er aber nicht - Is klar!

      Bis Später
          

      ==========================================================
      [Testversion meiner Seite]

      1. hi,

        Via <img src="img/bild.jpg"> und <link rel="stylesheet" type="text/css" href="style.css">. Sollte man das umstellen auf www.domain.tld/style.css? Aber eigentlich will ich keine absoluten Pfade.

        Die sind nicht absolut, sondern relativ zur Domain.
        Warum willst du die nicht?
        Ich finde das am einfachsten - und es frisst auch nicht unnötig Performance, weil ständig reinkommende "falsche" Requests wieder "geradegebogen" werden müssen.

        Kann man das irgendwie auch über mod_rewrite regeln?

        Du kannst jegliche Anfrage umschreiben, wenn du ein geeignetes Muster für sie findest.
        Für sinnvoll halte ich das in Bezug auf dieses Problem aber nicht.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }