ChromeでURLをリダイレクトしますか?


37

特定のドメインからのURLを強制的に別のドメインにリダイレクトできるようにするChromeの拡張機能はありますか?

(例えば、リダイレクトhttp://www.google.comhttps://encrypted.google.comます。)

:私が探している任意のリダイレクタ、ないだけでHTTPSにリダイレクトの特定のタスクのために働くKB SSLエンフォーサ、。


別の方法としてHOSTSファイルの使用を検討することもできます。
Synetech

@Synetech:ルートページだけをリダイレクトするか、特定のドメインの何かをリダイレクトしますか?
-Mehrdad

ドメイン全体(または場合によってはサブドメイン)をリダイレクトします。
Synetech

1
@JustinBuserは、それはです指定されたIPに、元のIPからブラウザをリダイレクトします。溝を掘って水を再配線することを想像してください。あなたは溝を掘り、ダムを開けると、水はそれが行った場所ではなく新しい場所に行きます。302については何も言わなかったので、セマンティクスだけを主張しています。
Synetech

1
encrypted.google.comが存在することを知りませんでした!クール
tony19

回答:


32

これを行うChrome拡張機能を作成しました。

注:私はこれをたった2つのサイトで構築しました-ただそのために-決してプロ品質ではありません。くだらないコードで私に火をつけないでください:)

編集:マニフェストv2に更新され、特定の追加の制限が追加されました。

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

}

これをインストールするには、コードブロックの上に記載されているファイル名でファイルを作成します。

ここに画像の説明を入力してください

3つのファイルがすべて作成されたら、Chromeメニュー→ツール→拡張機能をクリックします。開発者モードで「+」をクリックします。Load Unpacked extensionをクリックして、ファイルが保存されているディレクトリをポイントします。

ここに画像の説明を入力してください

ファイルを編集する必要があり、上記のように拡張機能をアンインストールして再インストールします


かっこいい!どうすればインストールできますか?(申し訳ありませんが、Chrome拡張機能の開発経験はありません。ハハ。)
Mehrdad

@Mehrdadが答えを拡大しました
Sathyajith Bhat

あなたはファイルの編集を見ていない場合は勿論、私はクローム拡張へのファイルを詰めていたかもしれない....
Sathyajith Bhatさん

美しい、ありがとうございました!JavaScriptも教えてくれます!:D
Mehrdad

ようこそ!Chrome拡張機能の開発を学ぶためにこれを開発しました。(および咳を回避するにはwebsense )。
サティアジスバート

12

ゲームに少し遅れてこの質問に答えることはできますが、今後の読者のためにこれに答えたいと思います。見て

Requestly-ネットワークリクエストを変更するChrome拡張機能。

現在、次のルールを設定できます

  1. リクエストURLを別のURLにリダイレクトします。
  2. 一部のリクエストをブロックします。
  3. URLの一部を別の文字列に置き換えます。(URL全体でも置き換えることができます)
  4. 追加/削除/変更HTTP(s)要求および応答のヘッダーの。指定したURLに対してのみヘッダー変更ルールを設定できるようになりました。

理解を深めるためのスクリーンショット:

  • ルール一覧

ルール一覧

  • ルールタイプのリスト

ルールタイプのリスト

  • 新しいリダイレクトルール

リダイレクトルールの作成

ロードマップには、次のように要求に応じてカバーされるものがたくさんあります。

  • カスタムヘッダーの設定(完了)
  • ユーザーエージェントの切り替え
  • リクエストのパラメーターの設定(完了)これを実現するには、リダイレクト/置換機能を使用します。

..その他

PS:私はこれを作成しましたので、これが役に立たないと思ったら私を責めることができます:)


Requestlyにヘッダーの変更が存在するようになりました。
sachinjain024

1
これは素晴らしい拡張機能です!+1を提供できるようにログインしました。願わくば、もっと多くの人がそれについて知りたいと思います:)
Adi Ulici


@ sachinjain024 githubリポジトリへのリンクは現在のところ死んでいます。
アンドレイクチャラヴィ

9

興味がある場合は、Switcherooと呼ばれる事前にパッケージ化されたユーザーフレンドリーなリダイレクタを開発しました。

HTTPリクエスト(ページ、スクリプト、画像など)のカスタムリダイレクトルールを設定します。これを行うには、単純な文字列置換を使用します。


4
オープンソース?:)
user72923

1
残念ながら、SwitcherooはHTTPスキームの切り替えをサポートしていません(質問の例に示されているように)。
マルタイン

2
また、リダイレクトするためだけに「アクセスするWebサイトのすべてのデータを読み取り、変更する」許可が必要です。
タイラン

3

少し遅れますが、この拡張機能は確実にトリックを実行するはずです: Redirector

そして、それは任意のリダイレクタです。


Facebookのスタートページを避けるのに最適です。一致:http?://www.facebook.com、代替:(。*)、置換:facebook.com/messages
lony 14

3
ああ、それは削除されましたか?スクリーンショットからすてきに見えました!(正規表現など、必要なもの)
ドンハッチ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.