In einem Web-Debugger wird der HTML-Code einer 301-Umleitungsseite wie folgt angezeigt:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="http://www.website.com/webpage.htm">here</a>.</p>
</body></html>
Ich muss HTML-Seiten ohne Serverunterstützung umleiten. Wenn ich die HTML-Seiten durch den obigen Code ersetze, funktioniert das genauso wie das Schreiben von 301-Weiterleitungen in .htaccess auf Apache? Ich habe dies auf Google nachgeschlagen, aber die Websites mit 301 Weiterleitungen haben diese Option für die Weiterleitung von HTML-Seiten nicht behandelt.
quelle
Nein, wenn Sie einfach den HTML-Code durch Ihr Beispiel ersetzen, wird der gewünschte Effekt nicht erzielt. Diese Seite wird dem Benutzer einfach angezeigt, da Apache den Statuscode '200' mitsendet. Benutzer können auf den Link klicken, um die Seite zu finden, dies geschieht jedoch nicht automatisch, und Spider wissen nicht, dass Sie beabsichtigen, eine dauerhafte Umleitung der Ressource durchzuführen.
Sie müssen eine ordnungsgemäße Redirect- oder _mod_rewrite_-Direktive entweder in .htaccess- oder in Ihren Apache conf- Dateien verwenden.
Wenn Sie tatsächlich PHP oder ähnliches verwenden, können Sie alternativ den Rückgabecode auf 301 setzen, einen Location- Response-Header ausgeben und dann funktioniert Ihre seitenbasierte Lösung. In PHP würde es ungefähr so aussehen:
quelle
Stimmen Sie mit Hissohathair darin überein, dass Ihr Ansatz nicht tatsächlich umgeleitet wird. Benutzer können auf den Link klicken, aber die Originalseite gibt weiterhin den normalen Statuscode "200" zurück und wird weiterhin in den Suchergebnissen angezeigt (wahrscheinlich nicht ganz das, was Sie möchten).
301-Statuscodes sind äußerst wichtig, um den Seitenrang beizubehalten. Das Hinzufügen von Meta-Refresh-Tags ist ebenfalls eine gute Option und kann in den meisten Fällen hilfreich sein (gemäß der Antwort von John), es kann jedoch nicht garantiert werden, dass die Suchmaschinen dies in Zukunft als 301-Weiterleitung akzeptieren. Das Hinzufügen geeigneter Weiterleitungen zu Ihren .htaccess-Dateien (oder Apache conf-Dateien) ist die beste Option, um zu gewährleisten, dass der 301-Statuscode gesendet wird.
Bearbeiten:
======================
Für eine IIS7-Website können Sie, solange das IIS URL Rewrite-Modul installiert ist, Umleitungsregeln in der web.config für die Site erstellen. Diese Regeln gelten auch für HTML-Dateien. Mehr Infos hier:
http://learn.iis.net/page.aspx/461/creating-rewrite-rules-for-the-url-rewrite-module/
======================
Eine andere Alternative, wenn Ihr Webhost nicht über die Funktionen .htaccess / mod_rewrite verfügt, besteht darin, den von Ihnen verwendeten Webhost zu ändern, auf dem Sie serverseitige Umleitungen einrichten können. Solange die Site ordnungsgemäß verschoben wird, sollte sie für Ihre Benutzer recht nahtlos sein. Dieser Ansatz ist nur für Extremfälle geeignet, wenn die Beibehaltung des Page Rank äußerst wichtig ist.
quelle