Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Is there any extension to Chrome that will let me force a URL from a particular domain to be redirected to another domain?

(E.g. Redirect http://www.google.com to https://encrypted.google.com.)

Note: I'm looking for an arbitrary redirector, not KB SSL Enforcer, which only works for the specific task of redirecting to HTTPS.

share|improve this question
    
Not that I know of - I built a Chrome extension which does this - will be happy to post the code as an answer –  Sathya May 16 '11 at 8:35
    
@Sathya: Cool, I'm definitely interested! :D –  Mehrdad May 16 '11 at 8:37
    
You could also consider using the HOSTS file as another method. –  Synetech May 23 '11 at 20:33
    
@Synetech: Would that redirect just the root page, or anything with a particular domain? –  Mehrdad May 23 '11 at 20:39
1  
@JustinBuser, it would redirect the browser from the original IP to the specified IP. Imagine digging a ditch to re-route water. You dig a ditch, open the dam, then the water goes to the new spot instead of where it would have gone. I never said anything about 302, so you are only arguing semantics. –  Synetech Jul 15 '12 at 17:03

4 Answers 4

up vote 23 down vote accepted

I had built a Chrome extension which does this.

Note: I built this for just 2 sites - just for the heck of it - by no means it's professional quality™. Please don't flame me for crappy code :)

Edit: Updated to manifest v2, which brings in certain additional restrictions.

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

}

To install this, create files with filenames as mentioned above the codeblock.

enter image description here

Once all 3 files are created, Click on Chrome Menu → Tools → Extensions. Click the "+" on Developer Mode. Click on Load Unpacked extension and point to the directory where the files are stored.

enter image description here

Edit the files are required, and uninstall and reinstall the extension as mentioned above

share|improve this answer
    
Omg cool! How do I install it? (Sorry I have no experience with developing Chrome extensions, haha.) –  Mehrdad May 16 '11 at 9:05
    
@Mehrdad expanded the answer –  Sathya May 16 '11 at 9:19
    
ofcourse, if you aren't looking at editing the files, I could've packed the files in to a Chrome Extension.... –  Sathya May 16 '11 at 9:21
    
Beautiful, thank you so much! It teaches me some JavaScript too! :D –  Mehrdad May 16 '11 at 9:25
    
welcome! I had developed this to learn Chrome extension development. (and to get around coughwebsensecough). –  Sathya May 16 '11 at 11:26

I know I am a bit late in the game to answer this question Still I would like to answer this for future readers. Have a look at

Requestly - A Chrome Extension to modify Network Requests.

Currently, You can setup rules for

  1. Redirect a request URL to another url.
  2. Block some requests.

Screenshots for more understanding:

  • List of Rules

List of Rules

  • New Redirect Rule

Creating a Redirect Rule

There are lot of things in roadmap to be covered in requestly like

  • Setting custom headers
  • Switching User Agents
  • Setting parameters in request

.. and a lot more.

PS: I have created this So you can blame me if you do not find this helpful :)

share|improve this answer

I have developed a pre packaged user friendly redirector called Switcheroo if you're interested:

Setup custom redirect rules for any http request i.e pages, scripts, images etc. Uses a simple string replace to do this.

share|improve this answer
2  
Open source? :) –  user72923 Nov 19 '12 at 23:10
    
Too bad Switcheroo doesn't support switching HTTP schemes (as indicated in the example in the question). –  Martijn Jul 6 at 19:02

A bit late, but this extension should surely do the trick: Redirector.

And it's an arbitrary redirector.

share|improve this answer
    
Works great to avoid the Facebook start page, Match: http?://www.facebook.com, Substitute:(.*), Replacement:facebook.com/messages –  lony Apr 25 at 9:51
1  
oh no, it's been removed? looked great from the screenshots! (regexes and such, which is what I need) –  Don Hatch May 22 at 0:38

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.