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

Startseite meldet 404 bei Aufruf aus den SERPs

Mehrere Domains, Domain-Umzug, neue Dateinamen, 301/302
Neues Thema Antworten
nightfishing
PostRank 2
PostRank 2
Beiträge: 56
Registriert: 20.03.2009, 21:09
Wohnort: Ruhrgebiet

Beitrag von nightfishing » 24.07.2012, 21:39

Hallo Ihr,

da Ihr mir bisher immer super weiterhelfen konntet, möchte ich Euch erneut um Hilfe bitten (falls das Thema hier falsch bitte verschieben)

Ich habe für einen Freund eine kleine Webseite erstellt. In den WMT habe ich festgelegt "mit www anzeigen". Die Webseite ist seit letztem Jahr online, bisher war alles okay.

Aber heute sagt mein Freund mir, dass er festgestellt hat, dass die Seite nicht erreichbar ist, wenn er den Domainnamen (ohne www) bei Google eingibt und dann auf die Ergebnisse (wunschgemäß mit www) klickt. Getestet - stimmt, ausgegeben wird der Fehlercode 404

Ich habe eine .htaccess Datei erstellt

Code: Alles auswählen

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.abcd-efg.de
RewriteRule ^(.*)$ http://abcd-efg.de/$1 [R=301,L]
und in das Rootverzeichnis geladen und gehofft, es würde nur am mit/ohne www liegen.

Erneut bei Google nach der Domain ohne www gesucht. 1.Treffer Startseite bei Google (angezeigt als www.abcd-efg.de), dann natürlich weitere Unterseiten (auch mit www angezeigt).

Startseiten-Treffer angeklickt = Fehler 404

Unterseiten-Treffer angeklickt = bei einigen kommt die 404; bei einigen wird nun der www-Treffer auf ohne-www umgeleitet und die Seite korrekt angezeigt. Allerdings wird auf den Unterseiten bei Klick auf den Header (Link zur index) wieder 404 ausgegeben.

Ich kann jedoch ohne Probleme von den über Google aufgerufenen und korrekt angezeigten Unterseiten auf eine andere Unterseite klicken, die beim Direktaufruf über die Google SERPs einen 404 Fehler meldet.

Ich habe alle Dateien vom Server gelöscht und alles neu hochgeladen (inkl .htaccess). Nix hat sich geändert. Die index meldet 404, einige Unterseiten aus den SERPs werden nun umgeleitet, andere nicht.

Ich verstehe das nicht. Erst gings Monate lang, dann ging nix, nun gehen manche der Unterseiten aus dem Google-Index und andere nicht und meine index.html scheint im Urlaub zu sein, obwohl ich sie gerade wieder ins Hauptverzeichnis geladen habe, wo sie monatelang brav war.

:-? Hat jemand von Euch eine Idee? Was kann/muss ich machen? Kann ich da was über die htaccess machen?

Bin Euch für Tipps sehr dankbar!

Einen schönen Abend wünscht Euch,
Nightfishing

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.


Lika
PostRank 8
PostRank 8
Beiträge: 880
Registriert: 27.06.2011, 09:55

Beitrag von Lika » 25.07.2012, 07:07

Hast du auch eine Weiterleitung bei Confixx oder Plesk (je nachdem wo du bist) eingerichtet? Du hast Google ja mitgeteilt, dass ohne www. nicht existiert und wenn die Weiterleitung fehlt, kann so ein blöder Fehler schonmal auftauchen.

nightfishing
PostRank 2
PostRank 2
Beiträge: 56
Registriert: 20.03.2009, 21:09
Wohnort: Ruhrgebiet

Beitrag von nightfishing » 25.07.2012, 11:35

Hallo Lika,
danke für Deine Antwort! :-)

Ich habe im Adminbereich des Hosters jetzt eine Weiterleitung eingetragen:

https://domain.de/

ist das richtig mit dem / dahinter?

Ich verstehe halt auch nicht, warum manche Google-Treffer (die ja alle mit www angezeigt werden) aufgerufen werden können und andere nicht :-?

Viele Grüße
Nightfishing

Edit:
Mit dem Eintrag der Weiterleitung wie hier in meinem Post genannt funktioniert es auch nicht :cry: dann ist gar kein Treffer aus den SERPs aufrufbar

Melegrian
PostRank 10
PostRank 10
Beiträge: 3170
Registriert: 30.01.2005, 12:36

Beitrag von Melegrian » 25.07.2012, 12:25

Ich frage mich, ist es irgendwie unmodern geworden, Metazeichen in einem Muster zu maskieren und ein Muster mit $ zu beenden?

Code: Alles auswählen

RewriteCond %{HTTP_HOST} ^www.abcd-efg.de
# würde ich so schreiben:
RewriteCond %{HTTP_HOST} ^www\.abcd-efg\.de$
Davon abgesehen, obwohl ein ^Muster$ nach meinem bescheidenen Kenntnisstand (aufbauend auf zwei nur teilweise gelesenen RegEx-Büchern) eigentlich immer so aufgebaut sein sollte, wird in einem Apache-Buch (habe nur eins) zuweilen auch darauf verzichtet. Könnte es sein, dass der Apache das im Normalfall halt auch ohne schluckt $ und je nach Konfiguration nur mit dem Meckern beginnt?

Oder könnte es sein, dass, wenn das abschließende $ fehlt, mod_rwrite sich nur dann daran stört, wenn sich am Ende Leerzeichen eingeschlichen haben, weil der Zeilenumbruch nicht korrekt ausgeführt wurde? Also bei fehlenden Abschluss mit $ eventuell vorhandener Whitespace am Zeilenende mit als Muster interpretiert wird?

Das sind jetzt Fragen, auf die ich keine Antwort hätte, die ich aber bei Störungen versuchen würde erst einmal auszuschließen. Bei irgendeiner anderen Angelegenheit, mir fällt nur leider nicht mehr ein, um was es sich handelte, da lagen die Störungen einfach daran, dass sich vor dem Zeilenumbruch am Ende der Zeilen Whitespace eingeschlichen hatte.

Melegrian
PostRank 10
PostRank 10
Beiträge: 3170
Registriert: 30.01.2005, 12:36

Beitrag von Melegrian » 26.07.2012, 11:17

Gestern war ich, wie ich heute zugeben muss, etwas blind, denn da sind noch weitere Ungereimtheiten vorhanden.
nightfishing hat geschrieben:In den WMT habe ich festgelegt "mit www anzeigen". ...

Aber heute sagt mein Freund mir, dass er festgestellt hat, dass die Seite nicht erreichbar ist, wenn er den Domainnamen (ohne www) bei Google eingibt und dann auf die Ergebnisse (wunschgemäß mit www) klickt.
Wenn die "mit www " angezeigt werden soll und das auch so in den WMT festgelegt wurde, warum wurde dann als Standard-Domain in der htaccess "ohne www " festgelegt? Oder einfacher, falls die htaccess nicht bockt, sondern ihre Arbeit verrichtet, dann kann "mit www anzeigen" nicht funktionieren, weil ja alle Zugriffe auf "ohne www " weitergeleitet werden.
nightfishing hat geschrieben:Ich habe eine .htaccess Datei erstellt

Code: Alles auswählen

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.abcd-efg.de
RewriteRule ^(.*)$ http://abcd-efg.de/$1 [R=301,L]
Wenn die wunschgemäß mit www erreichbar sein soll, dann sollte es doch wohl eher so aussehen:

Code: Alles auswählen

RewriteEngine on
RewriteCond %{HTTP_HOST} ^abcd-efg\.de$ [NC]
RewriteRule ^(.*)$ http://www.abcd-efg.de/$1 [R=301,L]
Mit der anderen Angelegenheit habe ich mich auch noch einmal etwas befasst. Muster beginnt mit ^, kann aber mit Platzhaltern * oder ohne $ enden. Nur wenn es ohne $ beendet wird, so bin ich mir immer noch etwas im Unklaren darüber, ob dann eventuell vorhandene Leerzeichen bis zum Zeilenende mit zum Muster gerechnet werden. Mal als hinkender Vergleich ein kleines Perl-Listing, bei dem zuerst nach ^ und dann nach $ gesucht wird, um beides gegen einen Bindestrich auszutauschen. Zumindest in dieser Konstellation wird ja für $ von "www.abcd-efg.de " nicht das "e" als letztes Zeichen, sondern das Zeilenende/Stringende (String2) nach einem vorhandenen Leerzeichen erkannt.

Code: Alles auswählen

$string1 = "www.abcd-efg.de";
$string2 = "www.abcd-efg.de ";

$string1 =~ s/^/-/;
$string2 =~ s/^/-/;
$string1 =~ s/$/-/;
$string2 =~ s/$/-/;

print "$string1\n";
print "$string2\n";

# Ausgabe:
#
# -www.abcd-efg.de-
# -www.abcd-efg.de -
Wie nun mod_rewrite damit umgeht, weiß ich zwar immer noch nicht genau, werde es irgendwann mal testen, doch sicherer ist es wohl, wenn das $ gleich an der gewünschten Stelle verwendet wird. Letztendlich ist ja im Rewrite Modul auch nur irgendeine RegEx-Maschine enthalten.

Jetzt habe ich es mal getest, leitet auch bei fehlenden $ Abschluss und 3 bis 4 Leerstellen vor Zeilenumbruch weiter. Daran kann es dann ja zumindest nicht liegen.

Code: Alles auswählen

RewriteEngine on

RewriteCond %{HTTP_HOST} ^localhost   
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

nightfishing
PostRank 2
PostRank 2
Beiträge: 56
Registriert: 20.03.2009, 21:09
Wohnort: Ruhrgebiet

Beitrag von nightfishing » 27.07.2012, 13:09

Hi Melegrian,

ganz lieben Dank für Deine Mühe und Deine ausführliche Antwort :-)
Melegrian hat geschrieben: Wenn die "mit www " angezeigt werden soll und das auch so in den WMT festgelegt wurde, warum wurde dann als Standard-Domain in der htaccess "ohne www " festgelegt? Oder einfacher, falls die htaccess nicht bockt, sondern ihre Arbeit verrichtet, dann kann "mit www anzeigen" nicht funktionieren, weil ja alle Zugriffe auf "ohne www " weitergeleitet werden.


Das stimmt, ich habe es in den WMT auf "ohne www" geändert, nachdem ich die htaccess hochgeladen habe.

Ich weiß leider immer noch nicht, was ich machen kann, damit die Webseite wieder über die Google-Treffer aufgerufen werden kann :cry:
Ich verstehe davon einfach zu wenig

Würdest Du Dir das evtl mal ansehen (Einstellungen im Hosting-Backend und die Dateien auf dem Server)?

Viele Grüße
Nightfishing

Melegrian
PostRank 10
PostRank 10
Beiträge: 3170
Registriert: 30.01.2005, 12:36

Beitrag von Melegrian » 29.07.2012, 17:57

Hatte im letzten Jahr mit der Beantwortung von Fragen begonnen, weil ich kaum Ahnung von mod-rewrite hatte und es selbst lernen wollte. Durch praktische Beispiele und dem Versuch bei Problemen eine Lösung zu finden, lernt man es halt am schnellsten und einfachsten. Außerhalb vom Forum sieht die Geschichte etwas anders aus, da hätte es den Beigeschmack von kostenloser Auftragsarbeit und dem bin ich bisher aus dem Wege gegangen.

Wenn es sich um eine weitestgehend private Seite oder um ein Hobby-Projekt handelt, dann könntest Du mir mal die URL per PM senden, nur um erst einmal zu sehen, was der HTTP-Header von sich gibt und dann sehen wir vielleicht weiter.

Antworten