Herzlich willkommen im Archiv vom ABAKUS Online Marketing Forum
Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.
Wenn du einen "sauberern 301" willst, dann mach auch 301WoY hat geschrieben:RewriteRule (^index\.html$) catalog/de/ [R=301, L]
Jetzt soll folgendes passieren:
Die Umleitung soll nicht sichtbar sein, es soll nur die Startseite angezeigt werden.
Das ist ja auch kein Problem, einfach das R=301 entfernen.
Problem an der Sache:
ich benötige einen 301 Status Code,
Geht nicht. DirectoryIndex gibt an, wie die Index heißt, die der Apache in jedem Ordner suchen soll. Da der in allen Ordnern sucht, macht die Angabe eines Ordners keinen Sinn.1. ) Durch .htaccess DirectoryIndex auf Verzeichnis /catalog/setzen.
Danke für deine ausführliche Erklärung.Synonym hat geschrieben:Nimm die aktuelle Weiterleitung raus, dann hast Du als Startseite wieder /
Mach eine neue Weiterleitung von "/catalog/de/" nach "/", dann gehen die alten Links nicht verloren
Und rufe beim Aufruf von "/" eben das Verzeichnis "/catalog/de/" intern auf
WoY hat geschrieben:entsteht dann nicht eine Endlosschleife`?
ist bei "2" ein 301? Nein, darum keine EndlosschleifeWoY hat geschrieben:1. Bei Anfrage auf /catalog/de leite via 301 weiter
2. Index.php aufruf leitet intern wieder auf /catalog/de weiter.
Büroflur ....WoY hat geschrieben:Dann fängt doch die Regel für /catalog/de wieder an den Inhalt via 301 weiterzuleiten, oder sehe ich das etwas zu kompliziert, hättest du mir ein einfaches Beispiel, wie ich das testen kann?
Code: Alles auswählen
ErrorDocument 404 http://www.800xe.de/index.php?error=404
Code: Alles auswählen
RewriteEngine ON
RewriteCond %{HTTP_HOST} ^800xe.de$ [NC]
RewriteRule ^(.*) http://www.800xe.de/$1 [L,R=301]
Code: Alles auswählen
RewriteEngine ON
RewriteRule (.*)/$ /?folder=$1
RewriteRule (.*)\.img$ /?file=$1
RewriteRule (.*)\.html$ /?file=$1
RewriteRule (.*)\.php8$ /?php8=$1
RewriteRule (.*)\.php9$ /?php9=$1
RewriteRule (.*)\.xml$ /?rss=$1
Code: Alles auswählen
ErrorDocument 404 /index.php?error=404
Nur mal so als kleine Anmerkung, da 800XE den Rest ja schon sagte...Wenn ich eine .htaccess in das Verzeichnis /catalog/de lege mit R=301, werden doch alle Anfragen auf dieses Verzeichnis auch mit Parametern, direkt an die index.php im Verzeichnis / weitergeleitet, entsteht dann nicht eine Endlosschleife`?
Wenn Du dem sagst, dass der nur "/catalog/de" weiterleiten soll, dann ist der Rest vollkommen egal. Mit dem passiert dann gar nichts.werden doch alle Anfragen auf dieses Verzeichnis / weitergeleitet
/catalog/de/ soll nun weitergeleitet werden auf /
/catalog/de/irgend-ein-artikel/ soll bestehen bleiben
Nein, kann es nicht. Da im Root nicht weitergeleitet wird auf die "/catalog/de/index.php", sondern diese nur aufgerufen wird.direkt an die index.php im Verzeichnis / weitergeleitet, entsteht dann nicht eine Endlosschleife
Code: Alles auswählen
RewriteEngine On
RewriteCond %{HTTP_HOST} ^kaiserstuhlshop.de$ [NC]
RewriteRule ^$ /catalog/de/index.php [L]
Code: Alles auswählen
RewriteCond %{REQUEST_URI} ^/catalog/de/$ [NC]
RewriteRule ^/catalog/de/$ / [R=301,L]
Code: Alles auswählen
RewriteCond %{THE_REQUEST} .... catalog/de/$
RewriteRule .... http://www.example.com [R=301,L]
RewriteCond {REQUEST_URI} ^/$
RewriteRule ^ /catalog/de/ [L]
Code: Alles auswählen
RewriteCond %{REQUEST_URI} ^/catalog/de/$ [NC]
RewriteRule ^/catalog/de/$ / [R=301,L]
Code: Alles auswählen
RewriteRule ^$ /catalog/de/index.php [L]
Code: Alles auswählen
RewriteRule ^catalog/de/$ / [R=301,L]
Code: Alles auswählen
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /catalog/de/index\.php
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^catalog/de/index.php$ / [R=301,L]
Code: Alles auswählen
RewriteEngine ON
# Startseite intern umbiegen
RewriteRule ^$ /catalog/de/index.php [L]
# Alte Startseite weiterleiten
RewriteRule ^catalog/de/$ / [R=301,L]
# Alte Startseite index.php weiterleiten
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /catalog/de/index\.php
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^catalog/de/index.php$ / [R=301,L]
Meinst Du für die Syntax selbst? Nicht, dass ich wüsste. Der Apache schreibt Dir ja auch Meldungen ins error-Log, wenn was nicht stimmt.gibt es einen debugger für mode rewrite?
Using a high value for Level will slow down your Apache server dramatically! Use the rewriting logfile at a Level greater than 2 only for debugging!