Seite 1 von 1

mod_rewrite - wie Haupturl ausschliessen?

Verfasst: 21.11.2004, 13:41
von stuijts
Hi,

Ich habe echt Tomaten auf dem Augen.

Ich mache auf eine Seite einiges mit RewriteRule, funktioniert alles soweit, _ausser_ die Domainname wird direkt angesprochen (also www.domain.de _ohne_ Dateiname).
Wie sorge ich dafür, daß in dem Fall die index.html geladen wird, oder die Regeln nicht gefolgt werden?

Viele Grüsse,
Birthe

Verfasst:
von

Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

Verfasst: 21.11.2004, 14:00
von bull
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^.*$ https://www.domain.com/index.html [R=301,L]

?

Ich hab die Frage leider nicht vollständig verstanden.
Nachtrag: Läuft da Apache 2.0.x?

Verfasst: 21.11.2004, 14:15
von stuijts
hmm nein, daß klappt nicht so ganz wie ich möchte.

Mein .htaccess (ursprung):
Options Includes +ExecCGI
AddType text/x-server-parsed-html .html

ErrorDocument 404 https://www.domain.de/

RewriteEngine On
Options +FollowSymlinks
RewriteBase /

# Folgende Zeile sorgt dafür, daß .htaccess nicht angezeigt werden kann!
RewriteRule ^\.htaccess$ - [F]

# Dateien umschreiben
RewriteRule ^index\.html$ index.php [L]
RewriteRule ^xyz\.html$ xyz.php [L]
RewriteRule ^datei-(.*)\.html$ datei.php?id=$1 [L]
RewriteRule ^dateimehr-(.*)\.html$ dateimehr.php?anfang=$1 [L]
RewriteRule ^(.*)\.html$ abfrage.php?key=$1 [L]
Seitdem ich den letzten Rule hinzugefügt habe, gibt es das Problem, daß https://www.domain.de versucht, eine Datei im Browser herunterzuladen.
Also irgendwie stimmt der Syntax nicht - nur wo weiss ich auch nicht.

Deine Lösung - ich habe es so an erster Stelle gesetzt:
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^.*$ https://www.domain.de/index.php [L]

sorgt zwar dafür, daß die Startseite angezeigt werden kann, aber ich möchte eigentlich nicht, daß irgendwo index.php erscheint. Also zumindest bei der Startseite fände ich es gut, daß in der Adresszeile auch www.domain.de stehen bleibt. Ist das möglich?

Apache 2.0.x - weiss ich nicht...

Viele Grüsse,
Birthe

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 21.11.2004, 14:41
von bull
Vereinfacht ausgedrückt willst Du alles mit den Rules umschreiben außer "/" ?
Probier mal:

Code: Alles auswählen

RewriteCond %{REQUEST_URI} ^/$
RewriteRule .* - [S=5]
RewriteRule ^index\.html$ index.php [L]
RewriteRule ^xyz\.html$ xyz.php [L]
RewriteRule ^datei-(.*)\.html$ datei.php?id=$1 [L]
RewriteRule ^dateimehr-(.*)\.html$ dateimehr.php?anfang=$1 [L]
RewriteRule ^(.*)\.html$ abfrage.php?key=$1 [L]

Verfasst: 21.11.2004, 14:46
von stuijts
Dann will er wieder was herunterladen.

Was bedeutet S=5 ?

Verfasst: 21.11.2004, 14:53
von bull
Daß die nächsten 5 Rules geskipped werden sollen.
daß https://www.domain.de versucht, eine Datei im Browser herunterzuladen.
Kannst Du die Server-Header anschauen? Mit samspade.org z.B.?

Verfasst: 21.11.2004, 15:01
von stuijts
Ne, es klappt nicht :(

Hat S=5 nicht der gleiche Effekt wie L, wenn danach keine Rules mehr kommen?

Verfasst: 21.11.2004, 16:58
von bull
Das Problem ist mittlerweile gelöst worden.
Der Fehler lag beim AddType, das entfernt wurde.

Verfasst: 21.11.2004, 17:02
von stuijts
Nochmal vielen Dank, Bull!