Antworten auf deine Fragen:
Neues Thema erstellen

mod_rewrite und CSS-Dateien

Hansi05

Aktives Mitglied

Hallo,

ich bin gerade dabei eine neue Website mit mod_rewrite zu erstellen. Meine htaccess sieht folgendermaßen aus:

Code:
AddHandler php53-cgi .php

RewriteEngine On
Options +FollowSymlinks
RewriteBase /

#Normaler Content
RewriteRule ^(.*)/(.*)/$                 index.php?s1=$1&s2=$2 [L]
RewriteRule ^(.*)/(.*)$                  index.php?s1=$1&s2=$2 [L]

RewriteRule ^Startseite/$                index.php?s1=Startseite&s2=Startseite [L]
RewriteRule ^geboten/$                   index.php?s1=geboten&s2=geboten [L]
RewriteRule ^gesucht/$                   index.php?s1=gesucht&s2=gesucht [L]

RewriteRule ^Startseite$                 index.php?s1=Startseite&s2=Startseite [L]
RewriteRule ^geboten$                    index.php?s1=geboten&s2=geboten [L]
RewriteRule ^gesucht$                    index.php?s1=gesucht&s2=gesucht [L]
Also sehen meine Links so aus:

/gesucht/gesucht oder /gesucht/gesucht/
oder
/gesucht/ oder /gesucht

Hier führen alle auf die selbe Seite. Meine CSS Dateien werden mit folgendem relativen Link geladen:

<link rel="stylesheet" type="text/css" href="../../system/template/main/css/template.css">

Im Ordner css ist auch eine htaccess:
RewriteEngine Off

Wenn allerdings mal ein User einen Link nach dem Schema: /gesucht/gesucht/fiktive_seite/ eingibt kommt er auf die Startseite, was an sich auch richtig ist, da wenn es eine Seite nicht gibt, man auf die Startseite soll bzw die Startseite includet wird. Leider wird jetzt die CSS-Datei nicht mehr geladen und die ganze Website ist im Eimer.

Ich habe bis jetzt erst eine Möglichkeit gefunden dem entgegenzuwirken:

<link rel="stylesheet" type="text/css" href="../../../../../../../../../../[...................]/system/template/main/css/template.css">
Allerdings sieht das nicht besonders hübsch aus und wenn der User dann doch mal noch paar mehr fiktive Ordner eintippt, dann wird die CSS wieder nicht geladen.

Wie kann ich also lösen, dass egal wie viele Ordner eingetippt werden, immer die CSS Datei geladen und somit auch die Website richtig angezeigt wird?

Mit freundlichen Grüßen
 

ak56Lk

Noch nicht viel geschrieben

AW: mod_rewrite und CSS-Dateien

ich hab mir nen konstante gesetzt, die die aktuelle URL enthält

PHP:
define('WWW_ROOT', 'http://'. $_SERVER['HTTP_HOST'] .'/');

und im template dann einfach

HTML:
<link src="<?php echo WWW_ROOT; ?>style.css" />

so klappt es immer, egal wie tief du in deiner struktur drin bist.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben