URL -Umleitung
URL -Umleitung, auch genannt URL -Weiterleitung, ist ein Weltweites Netz Technik zur Herstellung von a Website Verfügbar unter mehr als einem URL die Anschrift. Wenn ein Webbrowser Versuche, eine URL zu öffnen, die umgeleitet wurde, wird eine Seite mit einer anderen URL geöffnet. In ähnlicher Weise ist die Umleitung oder Domänenweiterung der Domänen, wenn alle Seiten in einer URL Domain werden in eine andere Domäne umgeleitet, wie wann Wikipedia.com und wikipedia.net werden automatisch auf wikipedia.org weitergeleitet.
Die URL -Umleitung erfolgt aus verschiedenen Gründen:
- zum URL -Verkürzung;
- verhindern kaputte Links Wenn Webseiten verschoben werden;
- Damit mehrere Domainnamen, die demselben Eigentümer gehören Webseite;
- Navigation in und aus einer Website zu führen;
- zum Schutz des Datenschutzes; und
- für feindliche Zwecke wie z. Phishing Angriffe oder Malwareverteilung.
Zwecke
Es gibt mehrere Gründe, die URL -Umleitung zu verwenden:
HTTPS erzwingen
Eine Website kann möglicherweise über einen sicheren sicheren zugänglich sein Https URI -Schema und einfaches HTTP (ein unsicherer URI, der mit "http: //" beginnt).
Wenn ein Benutzer in einem URI eintippt oder auf einen Link klickt, der sich auf die unsichere Variante bezieht, leitet der Browser automatisch auf die sichere Version um, falls die Website in der enthalten ist HSTs Vorlastliste wurde mit der Anwendung versandt oder wenn der Benutzer den Ursprung in der Vergangenheit bereits besucht hatte.
Andernfalls wird die Website über HTTP kontaktiert. Ein Website -Betreiber kann sich entscheiden, solche Anfragen zu stellen, indem der Browser stattdessen an die HTTPS -Variante umgeleitet wird und hoffentlich auch HST für zukünftige Zugriffe vorbereitet.
Ähnliche Domain -Namen
Ein Benutzer kann eine URL beschlagen. Organisationen registrieren diese "falsch geschriebenen" Domänen häufig und leiten sie an den "richtigen" Ort um. Diese Technik wird oft verwendet, um andere "reservieren" Domänen auf höchster Ebene (TLD) mit demselben Namen oder erleichtern Sie es einer Website ".edu" oder ".NET", um Benutzer, die ".com" einzugeben, aufzunehmen.
Seiten in eine neue Domäne bewegen
Webseiten können aus drei Gründen in eine neue Domain umgeleitet werden:
- Eine Site könnte seinen Domain -Namen ändern oder müssen.
- Ein Autor könnte seine einzelnen Seiten in eine neue Domäne verschieben;
- Zwei Websites können sich verschmelzen.
Mit URL -Weiterleitungen können eingehende Links zu einer veralteten URL an den richtigen Ort gesendet werden. Diese Links können von anderen Websites stammen, auf denen nicht erkannt wurde, dass es eine Änderung oder Lesezeichen/Favoriten gibt, die Benutzer in ihren Browsern gespeichert haben. Gleiches gilt für Suchmaschinen. Sie haben oft die älteren/veralteten Domain -Namen und -Links in ihrer Datenbank und senden Suchbenutzer an diese alten URLs. Durch die Verwendung einer "bewegten" Umleitung in die neue URL werden die Besucher immer noch auf der richtigen Seite landen. Außerdem sollte die Suchmaschine im nächsten Suchmaschinenpass die neuere URL erkennen und verwenden.
Protokollierung ausgehender Links
Die Zugriffsprotokolle der meisten Webserver halten detaillierte Informationen darüber, woher die Besucher stammen und wie sie die gehostete Website durchsucht haben. Sie protokollieren jedoch nicht, was die Besucher verbindet. Dies liegt daran, dass der Browser des Besuchers nicht mit dem ursprünglichen Server kommunizieren muss, wenn der Besucher auf einen ausgehenden Link klickt. Diese Informationen können auf verschiedene Arten erfasst werden. Ein Weg beinhaltet eine URL -Umleitung. Anstatt den Besucher direkt an die andere Website zu senden, können Links auf der Website auf der Domain der ursprünglichen Website zu einer URL leiten, die automatisch auf das reale Ziel weiterleitet. Diese Technik trägt den Nachteil der Verzögerung, die durch die zusätzliche Anfrage an den Server der ursprünglichen Website verursacht wird. Da diese hinzugefügte Anfrage eine Ablaufverfolgung im Serverprotokoll hinterlässt und genau enthüllt, welcher Link befolgt wurde, kann sie auch ein Datenschutzproblem sein.[1] Die gleiche Technik wird auch von einigen Unternehmenswebsites verwendet, um eine Erklärung zu implementieren, dass sich der nachfolgende Inhalt an einer anderen Website befindet und daher nicht unbedingt mit dem Unternehmen verbunden ist. In solchen Szenarien führt die Anzeige der Warnung zu einer zusätzlichen Verzögerung.
Kurze Aliase für lange URLs
Webanwendungen enthalten häufig lange beschreibende Attribute in ihren URLs, die Datenhierarchien, Befehlsstrukturen, Transaktionspfade und Sitzungsinformationen darstellen. Diese Praxis führt zu einer URL, die ästhetisch unangenehm und schwer zu erinnern ist und die möglicherweise nicht in die Größenbeschränkungen passt Microblogging Standorte. URL -Verkürzung Services bieten eine Lösung für dieses Problem, indem ein Benutzer von kürzer auf eine längere URL umgeleitet wird.[1]
Sinnvolle, anhaltende Aliase für lange oder sich ändernde URLs
Manchmal ändert sich die URL einer Seite, obwohl der Inhalt gleich bleibt. Daher kann die URL -Umleitung Benutzern helfen, die Lesezeichen haben. Dies erfolgt routinemäßig auf Wikipedia, wenn eine Seite umbenannt wird.
Post/Weiterleiten/Get
Post/Weiterleiten/Get (PRG) ist a Web Entwicklung Designmuster Das verhindert ein Duplikat bilden Einreichungen Wenn der Benutzer nach dem Einreichen des Formulars auf die Schaltfläche Aktualisieren klickt, erstellen Sie eine intuitivere Schnittstelle für Benutzeragenten (Benutzer).
Geräte -Targeting und Geotargeting
Weiterleitungen können effektiv für Zielzwecke verwendet werden Geotargeting. Das Gerätestanding ist mit dem Aufstieg mobiler Clients immer wichtiger geworden. Es gibt zwei Ansätze, um mobile Benutzer zu bedienen: Erstellen Sie die Website reaktionsschnell Oder leiten Sie eine mobile Website -Version weiter. Wenn eine mobile Website -Version angeboten wird, werden Benutzer mit mobilen Clients automatisch an den entsprechenden mobilen Inhalt weitergeleitet. Für Geräteziele werden clientseitige Weiterleitungen oder nicht zugeschnittene serverseitige Weiterleitungen verwendet. Geotargeting ist der Ansatz, um lokalisierte Inhalte anzubieten und den Benutzer automatisch an eine lokalisierte Version der angeforderten URL weiterzuleiten. Dies ist hilfreich für Websites, die die Zielgruppe an mehr als einem Ort und/oder einer Sprache abzielen. Normalerweise werden serverseitige Weiterleitungen zum Geotargeting verwendet, aber clientseitige Weiterleitungen können je nach Anforderungen auch eine Option sein.[2]
Suchmaschinen manipulieren
Weiterleitungen wurden verwendet, um Suchmaschinen mit unethischen Absichten zu manipulieren, z. B., URL -Entführung. Das Ziel der irreführenden Weiterleitungen ist es, den Suchverkehr auf Zielseiten zu steuern, die nicht genügend Ranking -Strom haben oder nur aus der Ferne oder überhaupt nicht mit dem Suchziel bezogen sind. Der Ansatz erfordert einen Rang für eine Reihe von Suchbegriffen mit einer Reihe von URLs, die hinterhältige Weiterleitungen verwenden, um den Sucher an die Zielseite weiterzuleiten. Diese Methode hatte eine Wiederbelebung mit dem Aufstieg von mobilen Geräten und dem Gerätestanding. URL-Entführung ist eine Off-Domain-Weiterleitungstechnik[3] Das nutzte die Art der Handhabung der Suchmaschine für vorübergehende Weiterleitungen. Wenn eine vorübergehende Umleitung aufgetreten ist, müssen Suchmaschinen entscheiden, ob sie der URL, die die Weiterleitung oder der Umleitungs -Ziel -URL initialisiert, den Rangwert zuweisen. Die URL, die die Umleitung initiiert, kann in den Suchergebnissen aufbewahrt werden, da die Umleitung auf eine vorübergehende Natur hinweist. Unter bestimmten Umständen war es möglich, dieses Verhalten zu nutzen, indem vorübergehende Weiterleitungen auf gut gerichtete URLs angewendet wurden, was zu einem Austausch der ursprünglichen URL in Suchergebnissen der URL führte, die die Weiterleitung initialisierte und daher das Ranking "stehlen". Diese Methode wurde normalerweise mit hinterhältigen Weiterleitungen kombiniert, um den Benutzerstrom aus den Suchergebnissen zu einer Zielseite neu zu zielen. Suchmaschinen haben effiziente Technologien entwickelt, um diese Art von manipulativen Ansätzen zu erkennen. Große Suchmaschinen wenden in der Regel harte Ranglistenstrafen auf Websites an, bei denen solche Techniken wie diese erwischt werden.[4]
Besucher manipulieren
URL -Umleitung wird manchmal als Teil von verwendet Phishing Angriffe, die Besucher darüber verwirren, welche Website sie besuchen.[5] Da moderne Browser immer die wirkliche URL in der Adressleiste zeigen, wird die Bedrohung verringert. Weiterleitungen können Sie jedoch auch zu Websites führen, die ansonsten versuchen, auf andere Weise anzugreifen. Zum Beispiel könnte eine Umleitung einen Benutzer zu einer Website bringen, die versuchen würde, sie zum Herunterladen von Antivirensoftware und der Installation von a zu bringen Trojaner von irgendeiner Art stattdessen.
Entfernen Überweisung
Information
Wenn ein Link geklickt wird, sendet der Browser in die HTTP -Anfrage ein Feld genannt Referer Dies zeigt die Quelle der Verbindung an. Dieses Feld ist mit der URL der aktuellen Webseite bevölkert und wird in der enden Protokolle des Servers, der den externen Link bedient. Da empfindliche Seiten empfindliche URLs haben können (zum Beispiel, https://company.com/plans-for-the-next-release-of-urproduct
), es ist nicht wünschenswert für die Überweisung
URL, um die Organisation zu verlassen. Eine Umleitungsseite, die ausgeführt wird Referrer versteckt könnte in alle externen URLs eingebettet werden, um zum Beispiel zu transformieren https://externalsite.com/page
hinein https://redirect.company.com/https://externalsite.com/page
. Diese Technik beseitigt auch andere potenziell empfindliche Informationen aus der Referrer -URL, wie die Session-IDund kann die Wahrscheinlichkeit verringern Phishing Indem Sie dem Endbenutzer angeben, dass sie ein klares Gateway an eine andere Website übergeben haben.
Implementierung
Eine verschiedene Arten von Reaktion auf den Browser führen zu einer Umleitung. Diese variieren darin, ob sie betreffen HTTP -Header oder HTML -Inhalt. Die verwendeten Techniken hängen typischerweise von der Rolle der Person ab, die sie implementiert, und deren Zugang zu verschiedenen Teilen des Systems. Zum Beispiel könnte ein Webautor ohne Kontrolle über die Header a verwenden Meta -Tag aktualisieren Während ein Webserver -Administrator, der alle Seiten auf einer Website umleitet, mit größerer Wahrscheinlichkeit die Serverkonfiguration verwendet.
Manuelle Umleitung
Die einfachste Technik besteht darin, den Besucher zu bitten, einem Link zur neuen Seite zu folgen, normalerweise mit einem HTML -Anker wie:
Bitte Folge <a href="https://www.example.com/">dieser Linka>.
Diese Methode wird häufig als Fall-Back verwendet-wenn der Browser die automatische Umleitung nicht unterstützt, kann der Besucher das Zieldokument immer noch erreichen, indem er dem Link folgt.
HTTP -Statuscodes 3xx
In dem Http Protokoll verwendet von der Weltweites Netz, a umleiten ist eine Antwort mit a Statuscode mit ... anfangen 3 Das führt dazu, dass ein Browser eine andere Seite anzeigt. Wenn ein Kunde auf eine Weiterleitung trifft, muss er eine Reihe von Entscheidungen treffen, wie sie mit dem Umbau umgehen können. Unterschiedliche Statuscodes werden von Clients verwendet, um den Zweck der Umleitung, die Umgang mit Caching und die für die nachfolgende Anfrage verwendete Anforderungsmethode zu verstehen.
HTTP/1.1 definiert mehrere Statuscodes für die Umleitung (RFC 7231):
- 300 mehrere Auswahlmöglichkeiten (z. B. verschiedene Sprachen anbieten)
- 301 bewegte sich dauerhaft (Umleitet dauerhaft von einer URL zu einer anderen Übergabe Link -Eigenkapital zur umgeleiteten Seite)
- 302 gefunden (Ursprünglich "vorübergehende Umleitung" in HTTP/1.0 und im Volksmund für CGI -Skripte verwendet; abgelöst von 303 und 307 in HTTP/1.1, aber für die Rückwärtskompatibilität erhalten)
- 303 Siehe andere (zwingt einen Antrag auf die neue URL, auch wenn die ursprüngliche Anfrage nach dem Postantrag war)
- 305 Verwenden Sie Proxy (Zeigt an, dass die angeforderte Ressource des Kunden nur über einen Proxy verfügbar ist.)
- 307 vorübergehende Umleitung (Bietet eine neue URL für den Browser, um eine GET- oder Post -Anfrage erneut einzugehen.)
- 308 Permanentumleitung (Bietet eine neue URL für den Browser, um eine GET- oder Post -Anfrage erneut einzugehen.)
Statuscodes 304 Nicht geändert und 305 Verwenden Sie Proxy sind nicht umleiten.
HTTP -Statuscode | HTTP -Version | Temporär permanent | Zwischengespeichert | Anforderungsmethode nachfolgende Anfrage |
---|---|---|---|---|
301 | Http/1.0 | Dauerhaft | Ja | Get / post kann sich ändern |
302 | Http/1.0 | Vorübergehend | nicht standardmäßig | Get / post kann sich ändern |
303 | Http/1.1 | Vorübergehend | noch nie | immer bekommen |
307 | Http/1.1 | Vorübergehend | nicht standardmäßig | kann sich nicht ändern |
308 | Http/1.1 | Dauerhaft | standardmäßig | kann sich nicht ändern |
Alle diese Statuscodes erfordern, dass die URL des Umleitungsziels am Ort angegeben wird: Header der HTTP -Antwort. In den 300 mehreren Auswahlmöglichkeiten wird normalerweise alle Auswahlmöglichkeiten im Körper der Nachricht aufgeführt und die Standardauswahl im Ort: Header angezeigt.
Beispiel HTTP -Antwort für eine 301 -Umleitung
A Http Die Reaktion mit dem 301 bewegten "dauerhaft" -Ledirect sieht folgendermaßen aus:
Http/1.1 301 dauerhaft umgezogen Ort: https://www.example.org/ Inhaltstyp: Text/HTML Inhaltslänge: 174 <html> <Kopf> <Titel>GerührtTitel> Kopf> <Karosserie> = Bewegt =<p>Diese Seite hat sich verlegt <a href="https://www.example.org/">https://www.example.org/a>.p> Karosserie> html>
Verwenden von serverseitigem Skript zur Umleitung
Webautoren, die HTML -Inhalte erstellen, können normalerweise keine Weiterleitungen mithilfe von HTTP -Headern erstellen, da diese beim Servieren einer HTML -Datei automatisch vom Webserverprogramm generiert werden. Das Gleiche gilt normalerweise auch für Programmierer, die CGI-Skripte schreiben, obwohl einige Server zulassen, dass Skripte benutzerdefinierte Header hinzufügen (z. B. durch Aktivieren von "Nicht-Parierten-Headern"). Viele Webserver generieren einen 3xx -Statuscode, wenn ein Skript einen "Ort" ausgibt: Header -Zeile. Zum Beispiel in PhpMan kann die Funktion "Header" verwenden:
Header("HTTP/1.1 301 dauerhaft bewegt"); Header('Ort: https://www.example.com/'); Ausfahrt();
Möglicherweise sind weitere Header erforderlich, um das Zwischenspeichern zu verhindern.[7] Der Programmierer muss sicherstellen, dass die Header vor dem Körper ausgegeben werden. Dies passt möglicherweise nicht leicht zum natürlichen Kontrollfluss durch den Code. Um dies zu unterstützen, können einige Frameworks für die serverseitige Inhaltsgenerierung die Körperdaten pufferen. In dem Asp -Skript Sprache, dies kann auch mit Verwendung erreicht werden response.buffer = true
und response.redirect "https://www.example.com/"
HTTP/1.1 ermöglicht entweder eine relative URI -Referenz oder eine absolute URI -Referenz.[8] Wenn die URI -Referenz relativ ist, berechnet der Client die erforderliche absolute URI -Referenz gemäß den in RFC 3986 definierten Regeln.[9]
Apache HTTP Server mod_rewrite
Das Apache HTTP Server Die Erweiterung der Mod_alias kann verwendet werden, um bestimmte Anforderungen umzuleiten. Typische Konfigurationsrichtlinien sehen aus wie:
Umleiten dauerhaft /oldpage.html https://www.example.com/newpage.htmlUmleiten 301 /oldpage.html https://www.example.com/newpage.html
Für flexiblere URL -Umschreiben und Umleitung, Apache mod_rewrite kann verwendet werden. Z. B. um eine Anfragen zu einem kanonischen Domain -Namen umzuleiten:
RewriteEngine an Umschreiben%{Http_host} ^([ ^.:]+\.)*OldSite \ .example \ .com \.? (: [0-9]*)? $ [Nc]Neu wrichen ^(.*) $ https://newsite.example.net/$1 [r = 301, l]
Eine solche Konfiguration kann über die Serverkonfigurationsdateien oder auf ein einzelnes Inhaltsverzeichnis über a auf einen oder alle Websites auf dem Server angewendet werden .htaccess
Datei.
Nginx umschreiben
Nginx Hat ein integriertes HTTP -Umschreiben -Modul,[10] mit der verwendet werden kann, um eine erweiterte URL-Verarbeitung und sogar die Webseitengenerierung durchzuführen (mit dem Rückkehr
Richtlinie). Ein Beispiel für eine solche erweiterte Verwendung des Umschreibens ist mdoc.su Archiviert 3. April 2022 bei der Wayback -Maschine, was eine deterministische implementiert URL -Verkürzung Service allein mit Hilfe der NGINX -Konfigurationssprache allein.[11][12]
Zum Beispiel, wenn eine Anfrage für /Dragonflybsd/hammer.5
sollte mitkommen, es würde zuerst intern umgeleitet werden /d/hammer.5
Mit der ersten Rewrite -Richtlinie unten (nur den internen Zustand, ohne dass noch HTTP -Antworten dem Kunden ausgegeben wurden) und dann mit der zweiten Umschreibungsrichtlinie eine HTTP -Antwort mit einer 302 Fund Statuscode würde dem Kunden ausgestellt, um sich tatsächlich nach außen umzuleiten CGI -Skript von Web-Mann:[13]
Lage /Libelle { umschreiben ^/Dragonfly (BSD)? ([,/].*)?$ /d$ 2 letzte; } Lage /d { einstellen $ db "https://leaf.dragonflybsd.org/cgi/web-man?command="; einstellen $ ds "& Section ="; umschreiben ^/./([^/]+) \. ([1-9])$ $ db $ 1 $ ds $ 2 umleiten; }
Aktualisieren Sie Meta -Tag und HTTP -Aktualisierungsheader
Netscape stellte die vor Meta -Aktualisierung Merkmal, die eine Seite nach einer bestimmten Zeit aktualisiert. Dies kann eine neue URL angeben, um eine Seite durch eine andere zu ersetzen. Dies wird von den meisten Webbrowsern unterstützt.[14][15] Ein Zeitübergang von Null Sekunden wirkt sich auf eine sofortige Umleitung aus. Dies wird von Google wie eine 301 dauerhafte Umleitung behandelt, die die Übertragung von PageRank auf die Zielseite ermöglicht.[16]
Dies ist ein Beispiel für ein einfaches HTML -Dokument, das diese Technik verwendet:
<html> <Kopf> <Meta http-äquiv="Aktualisierung" Inhalt="0; url = https: //www.example.com/" /> Kopf> <Karosserie> <p>Bitte Folge <a href="https://www.example.com/">dieser Linka>.p> Karosserie> html>
Diese Technik kann von verwendet werden von Webautoren Weil das Meta -Tag im Dokument selbst enthalten ist. Das Meta -Tag muss im Abschnitt "Kopf" der HTML -Datei platziert werden. Die Zahl "0" in diesem Beispiel kann durch eine andere Zahl ersetzt werden, um eine Verzögerung von diesen vielen Sekunden zu erreichen. Der Anker im Abschnitt "Körper" richtet sich an Benutzer, deren Browser diese Funktion nicht unterstützen.
Der gleiche Effekt kann mit einem HTTP erreicht werden Aktualisierung
Header:
Http/1.1 200 OK Aktualisierung: 0; url = https: //www.example.com/ Inhaltstyp: Text/HTML Inhaltslänge: 78 Bitte Folge <a href="https://www.example.com/">dieser Linka>.
Diese Antwort ist einfacher durch CGI -Programme zu generieren, da man den Standardstatuscode nicht ändern muss.
Hier ist ein einfaches CGI -Programm, das diese Umleitung beeinflusst:
#!/Usr/bin/perl drucken "Aktualisieren: 0; url = https: //www.example.com/ \ r \ n"; drucken "Inhaltstyp: text/html \ r \ n"; drucken "\ r \ n"; drucken "Bitte folgen Sie <a href=\"https://www.example.com/\"> Dieser Link </a>!"
HINWEIS: Normalerweise fügt der HTTP-Server die Statuszeile und den Header inhaltslang automatisch hinzu.
Das W3c Entmutigen Sie die Verwendung von Meta -Aktualisierung, da sie weder Informationen über die ursprüngliche oder neue Ressource übertragen, dem Browser (oder Suchmaschine). Die Richtlinien zur Zugänglichkeit der W3C (7.4)[17] Entmutigen Sie die Erstellung von automatischem Rangseiten, da die meisten Webbrowser dem Benutzer nicht erlauben, die Aktualisierungsrate zu deaktivieren oder zu steuern. Einige Artikel, die sie zu diesem Thema geschrieben haben W3C-Webinhalte-Richtlinien für Zugänglichkeit (1.0): Sicherstellen Sie die Benutzerkontrolle für zeitempfindliche InhaltsänderungenVerwenden Sie Standard -Weiterleitungen: Brechen Sie nicht den Rückknopf![18] und Kerntechniken für Webinhalte -Richtlinien 1.0 Abschnitt 7.[19]
JavaScript leitet
JavaScript kann eine Weiterleitung verursachen, indem Sie die festlegen Fenster.location
Attribut, z.
Fenster.Lage='https://www.example.com/'
Normalerweise treibt JavaScript die Redirector -Site vor URL zur Geschichte des Browsers. Es kann zu Umleitungsschleifen führen, wenn Benutzer auf die Rückbutton klicken. Mit dem folgenden Befehl können Sie diese Art von Verhalten verhindern.[20]
Fenster.Lage.ersetzen('https://www.example.com/')
HTTP -Header oder das Aktualisierungs -Meta -Tag können jedoch aus Sicherheitsgründen bevorzugt werden und da JavaScript nicht von einigen Browsern und vielen ausgeführt wird Webcrawler.
Rahmen lenkt
Ein leicht unterschiedlicher Effekt kann durch Erstellen einer Inline erreicht werden rahmen:
<iframe Höhe="100%" Breite="100%" src="https://www.example.com/"> Bitte Folge <a href="https://www.example.com/">Verknüpfunga>.iframe>
Ein Hauptunterschied zu den oben genannten Umleitungsmethoden besteht darin, dass der Browser für eine Rahmenumleitung die URL des Frame -Dokuments und nicht die URL der Zielseite in der URL -Leiste anzeigt. Dies Tabieren Die Technik kann verwendet werden, damit der Leser eine unvergesslichere URL sieht oder betrügerisch a Phishing Site als Teil von Website -Spoofing.[21]
Vor HTML5,[22] Der gleiche Effekt könnte mit einem durchgeführt werden HTML -Rahmen Das enthält die Zielseite:
<Frameset Reihen="100%"> <rahmen src="https://www.example.com/"> <Noframes> <Karosserie>Bitte Folge <a href="https://www.example.com/">Verknüpfunga>.Karosserie> Noframes> Frameset>
Ketten umleiten
Eine Umleitung kann zum anderen führen. Zum Beispiel die URL "https://wikipedia.com"(mit"*.com "als Domain) wird zuerst auf https://www.wikipedia.org/ (mit Domain -Namen in .org), wo Sie zur sprachspezifischen Site navigieren können. Dies ist unvermeidbar, wenn die verschiedenen Glieder in der Kette von verschiedenen Servern bedient werden, obwohl sie durch minimiert werden sollten umschreiben Die URL so weit wie möglich auf dem Server, bevor sie ihn als Umleitung an den Browser zurückgibt.
Schleifen umleiten
Manchmal kann ein Fehler dazu führen, dass eine Seite am Ende auf sich selbst zurückleitet, möglicherweise über andere Seiten, was zu einer unendlichen Abfolge von Umleitungen führt. Die Browser sollten nach einer bestimmten Anzahl von Hopfen aufhören, eine Fehlermeldung anzuzeigen.
Die Standardzustände von HTTP/1.1:[23]
Ein Klient SOLLTE nach zyklischen Umleitungen erkennen und eingreifen (d. H. "unendliche" Umleitungsschleifen).
HINWEIS: Eine frühere Version dieser Spezifikation empfahl maximal fünf Umleitungen ([RFC 2068], Abschnitt 10.3). Inhaltsentwickler müssen sich bewusst sein, dass einige Kunden eine so feste Einschränkung implementieren könnten.
Beachten Sie, dass sich die URLs in der Sequenz möglicherweise nicht wiederholen, z. B.: https://www.example.com/1[Permanent Dead Link] -> [1] -> [2] ...
Dienstleistungen
Es gibt Dienste, die eine URL -Umleitung bei Bedarf durchführen können, ohne dass technische Arbeiten oder Zugriff auf den Webserver erforderlich sind, auf dem Ihre Website gehostet wird.
URL -Umleitungsdienste
A Service umleiten ist ein Informationsverwaltungssystem, das einen Internet -Link bietet, der Benutzer in den gewünschten Inhalt weiterleitet. Der typische Nutzen für den Benutzer ist die Verwendung eines unvergesslichen Domänennamens und eine Verringerung der Länge der URL oder der Webadresse. Ein Umleitungsverbindungslink kann auch als dauerhafte Adresse für Inhalte verwendet werden, die häufig Hosts ändert, ähnlich wie die Domainnamensystem. Hyperlinks mit URL -Umleitungsdiensten werden häufig in Spam -Nachrichten verwendet, die auf Blogs und Wikis gerichtet sind. Ein Weg, um Spam zu reduzieren, besteht daher darin, alle Änderungen und Kommentare mit Hyperlinks zu bekannten URL -Umleitungsdiensten abzulehnen. Dies wird jedoch auch legitime Änderungen und Kommentare beseitigt und ist möglicherweise keine wirksame Methode zur Reduzierung von Spam. In letzter Zeit haben die URL -Umleitungsdienste zur Nutzung erstellt Ajax Als effiziente, benutzerfreundliche Methode zum Erstellen von verkürzten URLs. Ein wesentlicher Nachteil einiger URL -Umleitungsdienste ist die Verwendung von Verzögerungsseiten oder rahmenbasierte Werbung, um Einnahmen zu erzielen.
Geschichte
Die ersten Umleitungsdienste nutzten die Vorteile Domänen auf höchster Ebene (TLD) wie "wie".zu"(Tonga)", ".bei"(Österreich) und".ist"(Island). Ihr Ziel war es, unvergessliche URLs zu erstellen. Der erste Mainstream -Umleitungsdienst war v3.com, der im Jahr 2000 4 Millionen Benutzer auf dem Höhepunkt hatte. V3.com Erfolg wurde auf eine Vielzahl kurzer, denkwürdiger Domänen zurückzuführen." R.im "," Go. to "," I.am "," Come.to "und" Start.at ". V3.com wurde Anfang 1999 von Fortunecity.com, einem großen kostenlosen Webhosting -Unternehmen, übernommen.[24] Als der Verkaufspreis der Top -Domänen von 70,00 USD pro Jahr auf weniger als 10,00 USD fiel, ging die Nutzung von Umleitungsdiensten zurück. Mit dem Start von Tinyurl Im Jahr 2002 wurde eine neue Art des Umleitungsdienstes geboren, nämlich URL -Verkürzung. Ihr Ziel war es, lange URLs kurz zu machen, um sie in Internetforen zu veröffentlichen. Seit 2006 mit der 140 -Charakter -Grenze für die äußerst beliebten Twitter Service, diese kurzen URL -Dienste wurden stark genutzt.
Empfehlungsmaskierung
Umleitungsdienste können die verbergen Überweisung Durch Platzieren einer Zwischenseite zwischen der Seite ist der Link und sein Ziel. Obwohl diese anderen URL-Umleitungsdiensten konzeptionell ähnlich sind, dienen sie einem anderen Zweck und versuchen selten, die Ziel-URL zu verkürzen oder zu verschleiern (da sie nur beabsichtigte Nebeneffekte darin besteht, Empfehlungsinformationen zu verbergen und ein klares Gateway zwischen anderen Websites zu liefern. ) Diese Art der Umleitung wird häufig verwendet, um zu verhindern, dass potenziell malerische Verbindungen mit dem Empfehler Informationen erhalten, zum Beispiel a Session-ID in der Abfragezeichenfolge. Viele große Community -Websites verwenden die Link -Umleitung für externe Links, um die Wahrscheinlichkeit eines Exploits zu verringern, mit dem Kontoinformationen gestohlen werden können, und es deutlich zu machen, wenn ein Benutzer einen Dienst verlässt, um die Wahrscheinlichkeit wirksamer effektiver Wahrscheinlichkeit zu verringern Phishing .
Hier ist ein simpeltes Beispiel für einen solchen Dienst, der in geschrieben wurde Php.
$ url = htmlspecialchars($ _Get['URL']); Header('Aktualisieren: 0; url = https: // ' . $ url); ?> <html> <Kopf> <Titel>Umleitung ...Titel> <Meta http-äquiv="Aktualisierung" Inhalt="0; url = https: //= $ url; ?>"> Kopf> <Karosserie> Versuch, sich umzuleiten zu <a href="https: //= $ url; ?>">https: //= $ url; ?>a>. Karosserie> html>
Das obige Beispiel prüft nicht, wer es nennt (z. B. durch Überweisung, obwohl dies gefälscht werden könnte). Außerdem werden die bereitgestellte URL nicht überprüft. Dies bedeutet, dass eine böswillige Person mit einem URL -Parameter ihrer eigenen Auswahl auf die Umleitungsseite verlinken kann, die die Ressourcen des Webservers verwendet.
Sicherheitsprobleme
URL -Umleitung kann von Angreifern für missbraucht werden Phishing Angriffe wie offene Umleitung und verdeckte Umleitung. "Eine offene Weiterleitung ist eine Anwendung, die einen Parameter annimmt und einen Benutzer ohne Validierung zum Parameterwert umleitet."[25] "Covert Redirect ist eine Anwendung, die einen Parameter annimmt und einen Benutzer ohne ausreichende Validierung in den Parameterwert umleitet."[26] Es wurde im Mai 2014 von einem mathematischen Doktorand Wang Jing von der Nanyang Technological University in Singapur bekannt gegeben.[27]
Siehe auch
- HTTP -Standort
- Kanonisches Linkelement
- Kanonischer Meta -Tag
- Domänenmaskierung
- Verbindungsfäule
- Semantische URL
- URL -Normalisierung
Verweise
- ^ a b "Google belebt wieder um.. Blog.anta.net. 29. Januar 2009. ISSN 1797-1993. Archiviert von das Original am 17. August 2011.
- ^ "Weiterleitungen & SEO - die Gesamtführer". Audisto. Abgerufen 29. November 2015.
- ^ "SEO -Rat: Diskussion von 302 Umleitungen". Matt Cutts, ehemaliger Leiter des Google WebSpam -Teams. 4. Januar 2006.
- ^ "Hinterhältige Weiterleitungen". Google Inc. 3. Dezember 2015.
- ^ "Unvalidierte Weiterleitungen und Vorwärtsbetrügerblatt". Open Web Application Security Project (OWASP). 21. August 2014.
- ^ "Weiterleitungen & SEO - die komplette Anleitung". Audisto. Abgerufen 29. November 2015.
- ^ "PHP -Weiterleitungen: 302 bis 301 Rock Solid robuste Lösung". WebsiteFactors.co.uk. Archiviert von das Original am 12. Oktober 2012.
- ^ Roy T. Fielding; Julian F. Reschke, Hrsg. (2014). "Ort". Hypertext -Transferprotokoll (HTTP/1.1): Semantik und Inhalt. Ietf. p. 68. Sec. 7.1.2. doi:10.17487/rfc7231. RFC 7231.
- ^ Berners-Lee, Tim; Fielding, Roy T.; Massinter, Larry (2005). "Referenzauflösung". Einheitliche Ressourcenkennung (URI): Generische Syntax. Ietf. p. 28. Sek. 5. doi:10.17487/rfc3986. RFC 3986.
- ^ "Modul ngx_http_rewrite_module - Umschreiben". nginx.org. Abgerufen 24. Dezember 2014.
- ^ Murenin, Konstantine A. (18. Februar 2013). "Eine dynamische Website, die ganz in nginx.conf geschrieben wurde? Einführung mdoc.su!". [email protected] (Mailingliste). Abgerufen 24. Dezember 2014.
- ^ Murenin, Konstantin A. (23. Februar 2013). "Mdoc.su - Kurzhandbuch -Seiten -URLs für FreeBSD, OpenBSD, NetBSD und Dragonfly BSD". Abgerufen 25. Dezember 2014.
- ^ Murenin, Konstantin A. (23. Februar 2013). "mdoc.su.nginx.conf". Abgerufen 25. Dezember 2014.
- ^ "HTML Meta -Tag". www.w3schools.com.
- ^ "Eine Erforschung dynamischer Dokumente". 2. August 2002. Archiviert vom Original am 2. August 2002.
{{}}
: CS1 Wartung: Bot: Original -URL -Status unbekannt (Link) - ^ "Google und Yahoo akzeptieren unberührte Meta -Aktualisierungen, da 301 umleitet". Sebastians Broschüren. 3. September 2007.
- ^ "Richtlinien für die Zugänglichkeit von Webinhalten 1.0". www.w3.org.
- ^ Team, die QA. "Verwenden Sie Standard -Weiterleitungen". www.w3.org.
- ^ "Kerntechniken für Webinhalte -Richtlinien 1.0". www.w3.org.
- ^ "Cross-Browser Client Side URL Redirect Generator". Insiderzone.
- ^ Aaron Emigh (19. Januar 2005). "Anti-Phishing-Technologie" Archiviert 27. September 2007 bei der Wayback -Maschine (PDF). Radix Labs.
- ^ "HTML 5.2: 11. Veraltete Merkmale". www.w3.org.
- ^ Roy T. Fielding; Julian F. Reschke, Hrsg. (2014). "Umleitung 3xx". Hypertext -Transferprotokoll (HTTP/1.1): Semantik und Inhalt. Ietf. p. 54. Sek. 6.4. doi:10.17487/rfc7231. RFC 7231.
- ^ "Nettogewinne für die winzige pazifische Nation". BBC News. 14. September 2007. archiviert von das Original am 12. Mai 2014. Abgerufen 27. Mai 2010.
- ^ "Open Redirect". Owasp. 16. März 2014. Abgerufen 21. Dezember 2014.
- ^ "Verdeckte Umleitung". Tetraph. 1. Mai 2014. Abgerufen 21. Dezember 2014.
- ^ "Ernsthafter Sicherheitsfehler in Oauth, OpenID entdeckt". CNET. 2. Mai 2014. Abgerufen 21. Dezember 2014.
Externe Links
- Zuordnen von URLs zu Dateisystemorten - Apache HTTP Server Version 2.4
- Taxonomie der JavaScript -Umleitungspam (Microsoft Live Labs)
- Sicherheitslücken in URL -Umleitungen Die Klassifizierung der Webanwendungssicherheit Konsortium Bedrohung