Chuyển hướng URL trong Chrome?


37

Có bất kỳ tiện ích mở rộng nào cho Chrome sẽ cho phép tôi buộc một URL từ một tên miền cụ thể được chuyển hướng đến một tên miền khác không?

(Ví dụ: Chuyển hướng http://www.google.comđến https://encrypted.google.com.)

Lưu ý : Tôi đang tìm kiếm một trình chuyển hướng tùy ý , không phải KB SSL Enforcer, chỉ hoạt động cho nhiệm vụ cụ thể là chuyển hướng đến HTTPS.


Bạn cũng có thể xem xét sử dụng tệp HOSTS như một phương pháp khác.
Synetech

@Synetech: Điều đó sẽ chuyển hướng chỉ trang gốc, hoặc bất cứ điều gì với một tên miền cụ thể?
Mehrdad

Nó sẽ chuyển hướng toàn bộ tên miền (hoặc tên miền phụ tùy theo từng trường hợp).
Synetech

1
@JustinBuser, nó sẽ chuyển hướng trình duyệt từ IP gốc sang IP được chỉ định. Hãy tưởng tượng đào một con mương để định tuyến lại nước. Bạn đào một con mương, mở đập, rồi nước chảy đến địa điểm mới thay vì nơi nó sẽ đi. Tôi chưa bao giờ nói bất cứ điều gì về 302, vì vậy bạn chỉ đang tranh luận về ngữ nghĩa.
Synetech

1
Tôi không có ý tưởng hóa.google.com tồn tại! Mát
tony19

Câu trả lời:


32

Tôi đã xây dựng một tiện ích mở rộng Chrome thực hiện điều này.

Lưu ý: Tôi đã xây dựng trang này chỉ cho 2 trang web - chỉ vì mục đích xấu - không có nghĩa là nó có chất lượng chuyên nghiệp ™. Xin đừng châm cho tôi mã crappy :)

Chỉnh sửa: Đã cập nhật lên bảng kê khai v2, mang lại một số hạn chế bổ sung nhất định.

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

}

Để cài đặt cái này, hãy tạo các tệp có tên tệp như đã đề cập ở trên codeblock.

nhập mô tả hình ảnh ở đây

Khi tất cả 3 tệp được tạo, Nhấp vào Menu Chrome → Công cụ → Tiện ích mở rộng. Nhấp vào "+" trên Chế độ nhà phát triển. Nhấp vào Load Unpacked mở rộng và trỏ đến thư mục nơi các tệp được lưu trữ.

nhập mô tả hình ảnh ở đây

Cần chỉnh sửa các tệp và gỡ cài đặt và cài đặt lại tiện ích mở rộng như đã đề cập ở trên


Ôi thật tuyệt! Làm thế nào để tôi cài đặt nó? (Xin lỗi, tôi không có kinh nghiệm trong việc phát triển các tiện ích mở rộng của Chrome, haha.)
Mehrdad

@Mehrdad mở rộng câu trả lời
Sathyajith Bhat

Tất nhiên, nếu bạn không nhìn vào việc chỉnh sửa các tệp, tôi có thể đã đóng gói các tệp vào Tiện ích mở rộng của Chrome ....
Sathyajith Bhat

Thật đẹp, cảm ơn bạn rất nhiều! Nó cũng dạy tôi một số JavaScript! : D
Mehrdad

chào mừng bạn Tôi đã phát triển điều này để tìm hiểu phát triển tiện ích mở rộng của Chrome. (và để có được xung quanh ho websense ho ).
Sathyajith Bhat

12

Tôi biết tôi hơi muộn trong trò chơi để trả lời câu hỏi này. Tôi vẫn muốn trả lời câu hỏi này cho độc giả tương lai. Có một cái nhìn

Yêu cầu - Tiện ích mở rộng Chrome để sửa đổi Yêu cầu mạng.

Hiện tại, bạn có thể thiết lập quy tắc cho

  1. Chuyển hướng một URL yêu cầu sang một url khác.
  2. Chặn một số yêu cầu.
  3. Thay thế một phần trong URL bằng một chuỗi khác. (Thậm chí toàn bộ URL có thể được thay thế)
  4. Thêm / Xóa / Sửa đổi Tiêu đề trong Yêu cầu và Phản hồi HTTP (s). Bạn chỉ có thể thiết lập Quy tắc sửa đổi tiêu đề cho các URL được chỉ định ngay bây giờ.

Ảnh chụp màn hình để hiểu thêm:

  • Danh sách nội quy

Danh sách nội quy

  • Danh sách các loại quy tắc

Danh sách các loại quy tắc

  • Quy tắc chuyển hướng mới

Tạo quy tắc chuyển hướng

Có rất nhiều thứ trong lộ trình được đề cập một cách có chủ ý như

  • Đặt tiêu đề tùy chỉnh (Xong)
  • Chuyển đổi đại lý người dùng
  • Đặt tham số trong yêu cầu (Xong) Sử dụng tính năng Chuyển hướng / Thay thế để thực hiện việc này.

.. và nhiều hơn nữa.

PS: Tôi đã tạo ra cái này Vì vậy bạn có thể đổ lỗi cho tôi nếu bạn không thấy điều này hữu ích :)


Sửa đổi tiêu đề hiện có mặt trong Yêu cầu.
sachinjain024

1
Đây là một phần mở rộng tuyệt vời! Tôi đã đăng nhập chỉ để tôi có thể cung cấp cho bạn +1, hy vọng nhiều người tìm hiểu về nó :)
Adi Ulici

Hỗ trợ Regex cũng có sẵn trong Requestly
sachinjain024

@ sachinjain024 liên kết đến github repo đã chết.
Andrei Kucharirl

9

Tôi đã phát triển một trình chuyển hướng thân thiện với người dùng được đóng gói sẵn có tên là Switcheroo nếu bạn quan tâm:

Thiết lập quy tắc chuyển hướng tùy chỉnh cho bất kỳ yêu cầu http nào, ví dụ như trang, tập lệnh, hình ảnh, v.v ... Sử dụng chuỗi thay thế đơn giản để thực hiện việc này.


4
Mã nguồn mở? :)
user72923

1
Quá tệ Switcheroo không hỗ trợ chuyển đổi các lược đồ HTTP (như được nêu trong ví dụ trong câu hỏi).
Martijn

2
Cũng thật tệ, nó cần có quyền "Đọc và thay đổi tất cả dữ liệu của bạn trên các trang web bạn truy cập" chỉ để chuyển hướng.
Taylan

3

Hơi muộn một chút, nhưng phần mở rộng này chắc chắn nên thực hiện thủ thuật: Redirector .

Và đó là một chuyển hướng tùy ý .


Hoạt động tuyệt vời để tránh trang bắt đầu của Facebook, Kết hợp: http ?: //www.facebook.com, Thay thế: (. *), Thay thế: facebook.com/messages
lony

3
Ồ không, nó đã được gỡ bỏ? nhìn tuyệt vời từ các ảnh chụp màn hình! (regexes và như vậy, đó là những gì tôi cần)
Don nở
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.