URLs in Chrome umleiten?


37

Gibt es eine Erweiterung für Chrome, mit der ich die Weiterleitung einer URL von einer bestimmten Domain zu einer anderen Domain erzwingen kann ?

(ZB Weiterleiten http://www.google.coman https://encrypted.google.com.)

Hinweis : Ich suche einen beliebigen Redirector, nicht KB SSL Enforcer, der nur für die bestimmte Aufgabe der Umleitung zu HTTPS geeignet ist.


Sie können auch die HOSTS-Datei als andere Methode verwenden.
Synetech

@Synetech: Würde das nur die Root-Seite oder irgendetwas mit einer bestimmten Domain umleiten?
Mehrdad

Es würde die gesamte Domain (oder gegebenenfalls Subdomain) umleiten.
Synetech

1
@ JustinBuser, es würde den Browser von der ursprünglichen IP auf die angegebene IP umleiten. Stellen Sie sich vor, Sie graben einen Graben, um das Wasser umzuleiten. Du gräbst einen Graben, öffnest den Damm, dann fließt das Wasser an die neue Stelle, anstatt dorthin, wo es hingegangen wäre. Ich habe nie etwas über 302 gesagt, also streiten Sie nur über Semantik.
Synetech

1
Ich hatte keine Ahnung, dass encrypted.google.com existiert! Cool
tony19

Antworten:


32

Ich hatte eine Chrome-Erweiterung erstellt, die dies ermöglicht.

Hinweis: Ich habe dies für nur 2 Websites erstellt - nur zum Teufel - es ist keineswegs professionelle Qualität ™. Bitte flamm mich nicht für beschissenen Code :)

Bearbeiten: Auf Manifest v2 aktualisiert, wodurch bestimmte zusätzliche Einschränkungen eingeführt werden.

manifest.json

{
  "name": "URL Redirect",
  "version": "0.2",
  "description": "Checks URL and redirects as required.",
  "background": { 
     "page":"bg.html"
     },
   "manifest_version": 2,
   "content_scripts": [
   {
     "matches": ["http://*/*", "https://*/*"],
     "js": ["content.js"]
   }
   ],
  "permissions": ["tabs"]
}

bg.html

<html>
  <script src="redirect.js"></script>
</html>

redirect.js

chrome.extension.onRequest.addListener(function(request, sender) {
        chrome.tabs.update(sender.tab.id, {url: request.redirect});
    });

content.js

var pattern=/\bBlocked/;
var viewtext_base_url = "http://viewtext.org/article?url=";
var newurl;
if (pattern.test(window.document.title)) // if it matches pattern defined above
{
  newurl = viewtext_base_url + encodeURIComponent(window.location.href);
  chrome.extension.sendRequest({redirect: newurl}); // send message to redirect

}

Um dies zu installieren, erstellen Sie Dateien mit Dateinamen, wie oben im Codeblock angegeben.

Bildbeschreibung hier eingeben

Sobald alle 3 Dateien erstellt wurden, klicken Sie auf Chrome-Menü → Extras → Erweiterungen. Klicken Sie im Entwicklermodus auf das "+". Klicken Sie auf Load Unpacked Extension und zeigen Sie auf das Verzeichnis, in dem die Dateien gespeichert sind.

Bildbeschreibung hier eingeben

Bearbeiten Sie die erforderlichen Dateien und deinstallieren Sie die Erweiterung und installieren Sie sie erneut, wie oben erwähnt


Omg cool! Wie installiere ich es? (Sorry, ich habe keine Erfahrung mit der Entwicklung von Chrome-Erweiterungen, haha.)
Mehrdad

@Mehrdad erweiterte die Antwort
Sathyajith Bhat

Natürlich, wenn Sie nicht daran interessiert sind, die Dateien zu bearbeiten, hätte ich sie auch in eine Chrome-Erweiterung
packen können

Schön, vielen Dank! Es bringt mir auch etwas JavaScript bei! : D
Mehrdad

herzlich willkommen! Ich hatte dies entwickelt, um die Entwicklung von Chrome-Erweiterungen zu lernen. (und um Husten zu umgehen Websense Husten ).
Sathyajith Bhat

12

Ich weiß, dass ich ein bisschen spät im Spiel bin, um diese Frage zu beantworten. Dennoch möchte ich dies für zukünftige Leser beantworten. Schau es dir an

Requestly - Eine Chrome-Erweiterung zum Ändern von Netzwerkanforderungen.

Derzeit können Sie Regeln für einrichten

  1. Leiten Sie eine Anforderungs-URL zu einer anderen URL um.
  2. Block einige Anfragen.
  3. Ersetzen Sie einen Teil in der URL durch eine andere Zeichenfolge. (Auch ganze URL kann ersetzt werden)
  4. Hinzufügen / Entfernen / Ändern von Headern in HTTP-Anforderungen und -Antworten. Sie können jetzt Header-Änderungsregeln nur für bestimmte URLs einrichten.

Screenshots zum besseren Verständnis:

  • Liste der Regeln

Liste der Regeln

  • Liste der Regeltypen

Liste der Regeltypen

  • Neue Umleitungsregel

Erstellen einer Umleitungsregel

Es gibt viele Dinge in der Roadmap, die auf Anfrage behandelt werden müssen

  • Benutzerdefinierte Header festlegen (Fertig)
  • Benutzeragenten wechseln
  • Festlegen der erforderlichen Parameter (Fertig) Verwenden Sie hierzu die Funktion "Umleiten / Ersetzen".

.. und vieles mehr.

PS: Ich habe das erstellt, also kannst du mir die Schuld geben, wenn du das nicht hilfreich findest :)


Die Änderung der Überschriften ist jetzt in Requestly verfügbar.
sachinjain024

1
Dies ist eine großartige Erweiterung! Ich habe mich nur eingeloggt, damit ich dir eine +1 geben kann, hoffentlich erfahren mehr Leute davon :)
Adi Ulici

Regex Support ist auch in Requestly verfügbar
sachinjain024

@ sachinjain024 der link zu github repo ist ab sofort tot.
Andrei Kucharavy

9

Ich habe einen vorgefertigten benutzerfreundlichen Redirector namens Switcheroo entwickelt, wenn Sie interessiert sind:

Richten Sie benutzerdefinierte Weiterleitungsregeln für alle HTTP-Anforderungen ein, z. B. für Seiten, Skripte, Bilder usw. Verwenden Sie dazu eine einfache Zeichenfolge zum Ersetzen.


4
Open Source? :)
user72923

1
Schade, dass Switcheroo das Umschalten von HTTP-Schemas nicht unterstützt (wie im Beispiel in der Frage angegeben).
Martijn

2
Schade auch, dass es die Erlaubnis braucht, "alle Ihre Daten auf den von Ihnen besuchten Websites zu lesen und zu ändern", um weitergeleitet zu werden.
Taylan

3

Ein bisschen spät, aber diese Erweiterung sollte sicherlich den Trick machen: Redirector .

Und es ist ein beliebiger Redirector .


Funktioniert hervorragend, um die Facebook-Startseite zu umgehen, Match: http?: //Www.facebook.com, Substitute: (. *), Replacement: facebook.com/messages
lony

3
oh nein, es wurde entfernt? sah gut aus von den Screenshots! (Regexes und so, was ich brauche)
Don Hatch
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.