Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

php Links in seo-freundliche URLs umwandeln klappt nicht

Hier können Sie Ihre Fragen zum Thema Suchmaschinenoptimierung (SEO) / Positionierung stellen
cool-andy
PostRank 4
PostRank 4
Beiträge: 140
Registriert: 26.08.2004, 19:21

Beitrag von cool-andy » 04.02.2008, 22:25

Fridolin hat geschrieben:Was passiert wenn du es so machst ?

RewriteEngine On
RewriteBase /
Habe das mit dem RewriteBase / mal eingefügt. Brachte aber auch nichts...

Anzeige von ABAKUS

von Anzeige von ABAKUS »


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

cool-andy
PostRank 4
PostRank 4
Beiträge: 140
Registriert: 26.08.2004, 19:21

Beitrag von cool-andy » 04.02.2008, 22:34

Planet-Bloody hat geschrieben:Ich kann dir diesen Link empfehlen: https://www.modrewrite.de/foren/ftopic82.html

dort werden einige Fehlerquellen für Mod Rewrite besprochen und hat mir schon das ein und andere mal geholfen.
Danke für den Link. Habe ich durchgelesen und auch einiges probiert. also laut phpinfo() ist das mod_rewrite modul definitiv geladen und ich habe auch mal den Test mit:

RewriteEngine On
RewriteRule ^ https://www.google.de [R,L]

probiert und das geht einwandfrei. Da leitet er meine Seite immer auf google weiter.
Aber wehe ich versuchs wieder mit einer bestimmten php Datei:

RewriteRule ^impressum$ /impressum.htm [L,R=301]

Dann klappts wieder nicht :-(

cool-andy
PostRank 4
PostRank 4
Beiträge: 140
Registriert: 26.08.2004, 19:21

Beitrag von cool-andy » 04.02.2008, 22:39

Elradon hat geschrieben:Eben. Du musst sowohl die alte Variante auf die neue weiterleiten:
RewriteRule ^altedatei$ /bsp-neuer-ordner/ [L,R=301]
, als auch die neue Variante intern weiterleiten.

RewriteRule schöne-endung-nämlich.html nicht-so-schöne-php-endung.php [L]
ah, das hat mich schon mal weitergebracht !

Ich habe es nun so:

RewriteEngine On
RewriteRule ^impressum$ /impressum.htm [L,R=301]
RewriteRule ^impressum.htm /impressum.php [L]

Wenn ich nun www.domain.de/impressum.htm aufrufe zeigt er mir die .php Seite an ! Sehr schön !

Wenn man aber mal direkt die impressum.php aufruft findet er die ebenfalls und zeigt diese URL auch weiterhin im Browser an. Ist das richtig so ? Ich möchte DC vermeiden. Sieht google die 301 Weiterleitung von der php auf die htm ? Blöde Frage: wenn ich die .php aufrufe bleibt dann in der Browserzeile die URL mit .php so stehen, er hat aber weitergeleitet oder sollte sich nach dem Aufruf der Link ändern in .htm ?

Anzeige von ABAKUS

von Anzeige von ABAKUS »

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

Jetzt anfragen: 0511 / 300325-0.


cool-andy
PostRank 4
PostRank 4
Beiträge: 140
Registriert: 26.08.2004, 19:21

Beitrag von cool-andy » 05.02.2008, 11:06

*push*

PS. nun habe ich es doch schon fast ;-)

cool-andy
PostRank 4
PostRank 4
Beiträge: 140
Registriert: 26.08.2004, 19:21

Beitrag von cool-andy » 05.02.2008, 20:28

*nochmal push*

Hat das denn niemand sonst so wie ich ? Dass .php URLs auf .htm weitergeleitet werden ? Dass mir jemand sagt wie man verhindert dass nun die .php neben der .htm aufgerufen werden kann ? Das Weiterleiten klappt ja nun, aber die Seite scheint nun unter beiden Varianten erreichbar zu sein... (--> DC ?)

Elradon
PostRank 8
PostRank 8
Beiträge: 867
Registriert: 23.08.2006, 15:36

Beitrag von Elradon » 05.02.2008, 23:34

Hilft immer dann noch mal zu lesen ;)
RewriteRule ^impressum$ /impressum.htm [L,R=301]
löschen und das hier dort hin:
RewriteRule ^impressum.php$ /impressum.htm [L,R=301]

cool-andy
PostRank 4
PostRank 4
Beiträge: 140
Registriert: 26.08.2004, 19:21

Beitrag von cool-andy » 06.02.2008, 17:47

Elradon hat geschrieben: RewriteRule ^impressum.php$ /impressum.htm [L,R=301]
Danke, aber das klappt bei mir auch nicht so wie es soll.

Wenn ich das so mache findet er die .htm zwar noch, aber die .php nicht mehr (kommt immer error 404). Komischerweise dauert es ewig lange bis er den 404 bringt (ca. zu 30-60 Sekunden).

Oder geht das gar nicht so wie ich das will, dass er bei Aufruf der .php dann die Seite mit .htm Endung anzeigt ?

Sonst noch jemand eine Idee ? :o

Elradon
PostRank 8
PostRank 8
Beiträge: 867
Registriert: 23.08.2006, 15:36

Beitrag von Elradon » 07.02.2008, 00:19

Poste mal bitte deine komplette .htaccess

cool-andy
PostRank 4
PostRank 4
Beiträge: 140
Registriert: 26.08.2004, 19:21

Beitrag von cool-andy » 07.02.2008, 01:16

Elradon hat geschrieben:Poste mal bitte deine komplette .htaccess
Das war weiter vorne die komplette ;-)

Hier noch mal:

RewriteEngine On
RewriteRule ^impressum$ /impressum.htm [L,R=301]
RewriteRule ^impressum.htm /impressum.php [L]

rocky
PostRank 3
PostRank 3
Beiträge: 85
Registriert: 03.11.2003, 14:37

Beitrag von rocky » 07.02.2008, 11:12

hi
versuch mal
RewriteRule ^impressum(.*).html$ impressum.php

denn bei mir hier funzt es seltsamerweise ohne .* auch nicht. Ist eigentlich doof aber ist hier so.

gruss

Elradon
PostRank 8
PostRank 8
Beiträge: 867
Registriert: 23.08.2006, 15:36

Beitrag von Elradon » 07.02.2008, 14:44

Elradon hat geschrieben:Hilft immer dann noch mal zu lesen ;)
RewriteRule ^impressum$ /impressum.htm [L,R=301]
löschen und das hier dort hin:
RewriteRule ^impressum.php$ /impressum.htm [L,R=301]

cool-andy
PostRank 4
PostRank 4
Beiträge: 140
Registriert: 26.08.2004, 19:21

Beitrag von cool-andy » 08.02.2008, 20:26

rocky hat geschrieben:hi
versuch mal
RewriteRule ^impressum(.*).html$ impressum.php

denn bei mir hier funzt es seltsamerweise ohne .* auch nicht. Ist eigentlich doof aber ist hier so.

gruss
hm...das brachte bei mir keine Besserung. Er zeigt immer noch beide Varianten an. die .php und die .htm :o

cool-andy
PostRank 4
PostRank 4
Beiträge: 140
Registriert: 26.08.2004, 19:21

Beitrag von cool-andy » 08.02.2008, 20:32

Elradon hat geschrieben:
Elradon hat geschrieben:Hilft immer dann noch mal zu lesen ;)
RewriteRule ^impressum$ /impressum.htm [L,R=301]
löschen und das hier dort hin:
RewriteRule ^impressum.php$ /impressum.htm [L,R=301]
Danke, aber das hatte ich schon versucht. Mit der Variante findet er komischerweise keine der beiden Seiten mehr :o

chris21
PostRank 9
PostRank 9
Beiträge: 2758
Registriert: 10.04.2005, 18:17

Beitrag von chris21 » 08.02.2008, 21:43

Ich glaube, ich besorge mir bald ne neue Signatur mit den wichtigsten RewriteRules drin.

Denn genau dieses Problem habe ich hier gestern gerade aufgebröselt zu einem Thread von Chrizz im Unterforum Webcoding und Programmierung (kleiner Tipp: Modrewrite-Themen besser da nachfragen: ergibt zwar weniger Antworten, aber dafür schneller die richtigen).

Also: ich vermute, Dein Szenario sieht folgendermaßen aus:

Bisher hast Du unschöne Links mit php und Parametern in den SERPs.

Willst aber nun schöne haben wie impressum.htm, obwohl die Seite intern immer noch vom alten php-Skript ausgegeben wird.

Soweit richtig?

Dann braucht man drei Schritte:

Erstens:

Alte php-Links auf neue .html Links umleiten und zwar so, dass diese neuen Links auch im Browser erscheinen (externe Umleitung genannt).

Zweitens: diese "virtuellen" Adressen dann intern wieder so umleiten, dass der Inhalt des php-Skripts ausgegeben wird.

Problem: damit könnte man eine Endlosschleife erreichen (php->html->php->html, etc.). Der von Dir fälschlicherweise als 404-Error bezeichnete Fehler, der erst nach 60 Sek. auftrat, ist genau dieses Phänomen. Die Lösung von Eldoradon geht also schon in die richtige Richtung, es fehlt nur:

Lösung: die Erfindung eines zusätzlichen Parameters.

Dann sieht es so aus:

Code: Alles auswählen

RewriteEngine on

RewriteCond %{QUERY_STRING} !rew=y
RewriteRule impressum.php /impressum.htm [L,R=301]

RewriteRule impressum.htm /impressum.php?rew=y [L]

Drittens:

Die Links auf die Unterseiten entsprechend im Quelltext ändern.

Dann wird bei Aufruf von impressum.htm der Inhalt von impressum.php wiedergegeben.

Wenn nun schon von früher die impressum.php in den Google SERPs gelandet ist, wird bei Aufruf dieser Seite die Adresse impressum.php zu impressum.htm geändert und trotzdem der Inhalt der impressum.php ausgegeben.

Ich hoffe, damit kommst Du weiter.

MfG

Chris

cool-andy
PostRank 4
PostRank 4
Beiträge: 140
Registriert: 26.08.2004, 19:21

Beitrag von cool-andy » 09.02.2008, 19:48

Genau, hast du alles sehr richtig erfasst, was ich wollte. Und genauso gehts auch ! Super. Vielen Dank für deine Mühe. Finde ich klasse, dass es nun geht und dir solche Mühe gemacht hast :D

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag