Seite 1 von 1

Endlosschleife bei Mode_rewrite mit [R=301,L]

Verfasst: 08.03.2014, 21:28
von freyner
Hallo ich habe ein Problem mit mode_rewrite, welchen ich 2 mal verwende. Vorgestellt hab ich es mir folgendermaßen:

Code: Alles auswählen

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php  [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^shop/(.*)/(.*)/(.*)/(.*)\.php$ http://www.shop.de/anzeige?kategorie=$1&subkat1=$2&subkat2=$3&id=$4  [R=301,L]
Wenn ich das hier probiere bekomme ich eine Endlosschleife bzw. in der URL wird an einer tour .php eingefügt

Code: Alles auswählen

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php  

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^shop/(.*)/(.*)/(.*)/(.*)\.php$ http://www.shop.de/anzeige?kategorie=$1&subkat1=$2&subkat2=$3&id=$4 
ohne [R=301,L] funktioniert es tadellos, ich bekomme nur von google double content, da meine Seite mit und ohne .php vorhanden ist.

Hat jemand eine Idee, was ich falsch mache?

Verfasst:
von

Verfasst: 09.03.2014, 11:27
von bbnetch
was willst du denn genau?
auf ein ordner oder auf eine darin liegende datei umleiten?

Verfasst: 09.03.2014, 13:10
von freyner
Ich möchte auf eine Datei umleiten.

1. soll die Endung .php nicht angezeigt werden.
2 soll ein link der Form www.shop/kategorie/subkat1/subkat2/id auf die URL https://www.shop.de/anzeige?kategorie=$ ... 2=$3&id=$4 umgeschrieben werden.


Wie gesagt ohne [R=301,L] funktioniert alles mit meinem Script, wie ich mir vorgestellt habe. Nur mit dem Zusatz [R=301,L] sieht meine URL ungefähr so aus shop.php.php.php....

Verfasst: 10.03.2014, 14:52
von elmex
R=301 ist eine "externe" Weiterleitung, sprich, das L wirkt nicht, weil er immer wieder neu an den Anfang der Regel kommt. (daher auch ganz viel .php.php.php---)

Und wieder die Frage, was willst Du genau? 301 Weiterleitungen macht man auf veraltete Seiten und so. Deinen ".php" DC damit zu heilen ist nicht der richtige Weg

Verfasst: 10.03.2014, 15:58
von freyner
Was wäre denn der richtige weg?
Meine Absicht ist wie gesagt, das bei google die Dateien mit der Endung .php nicht mehr gelistet sind sondern nur noch ohne Endung

Verfasst:
von

Verfasst: 10.03.2014, 20:46
von bbnetch
im grunde macht man sowas ueber die robots.txt

User-agent: *
Disallow: /*.php

und nicht ueber htaccess.

danach wuerd ich die urls die du raushaben willst ueber die webmastertools loeschen lassen.