2009-06-05 40 views
7

Tôi có một proxy HTTP đang chạy tại localhost: 1234. Proxy hoạt động tốt cho tất cả các yêu cầu web mà tôi thực hiện.Chuyển hướng localhost qua proxy?

Tôi có một máy chủ đang chạy tại máy chủ cục bộ: 4567. Tôi muốn các yêu cầu HTTP đến máy chủ của tôi để đi qua proxy của tôi. Nên đơn giản, phải không? Có cách nào để làm cho trình duyệt IE hoặc bất kỳ trình duyệt nào khác làm điều này không?

+0

liên quan: http: // stackoverflow.com/questions/37700079 –

Trả lời

6

Thông thường, bạn có thể định cấu hình cài đặt trình duyệt của mình cho việc này. Trong Firefox là Tùy chọn -> Nâng cao -> Mạng -> Kết nối (Cài đặt).

IE tự động bỏ qua proxy nếu phát hiện URL cục bộ. Điều này luôn luôn là một cái gai ở bên cạnh các công cụ như Fiddler.

Tuy nhiên, bạn thường có thể nhận được thông tin đó theo nghĩa đen sẽ tới http://somesite.com:1234. Ai đó đã dành thời gian để đăng ký miền "somesite.com" để tự động định tuyến đến 127.0.0.1. Điều này ngu ngốc IE nghĩ rằng đó là một tên miền bên ngoài, nhưng nên chạy qua proxy của bạn trong khi chuyển hướng đến máy chủ địa phương của bạn.

Chúc may mắn.

+1

không biết về somesite.com - đó là mát mẻ – russau

+1

Dường như đăng ký trên somesite.com đã hết hiệu lực. – alnorth29

+0

sử dụng tệp HOSTS như trong câu trả lời của @ FlavorScape. – 1010

-1

Tùy thuộc vào trình duyệt của bạn. Trong Firefox, hãy kiểm tra xem "no proxy" có trống không. Theo mặc định, Firefox chặn proxy của URL thành localhost và 127.0.0.1.

mozilla.org

4

Có, có một cách!

Trong IE9 nếu bạn đã định cấu hình proxy theo cách thủ công trong Tùy chọn Internet, bạn có thể nhấp vào Nâng cao và chỉ cần thêm <-loopback> vào danh sách bỏ qua proxy. Trong IE6, các URL localhost đi qua proxy khi proxy được cấu hình thủ công. Nó chỉ là phiên bản IE7 + mà không gửi yêu cầu localhost đến máy chủ proxy.

Nếu bạn muốn có giải pháp toàn cầu hơn, bạn có thể tạo tập lệnh cấu hình proxy tự động. Về cơ bản nó là một tệp javascript chứa hàm FindProxyForURL. Bạn có thể cấu hình Tùy chọn Internet bằng URL của tập lệnh đó. Tất cả các yêu cầu HTTP sẽ truy vấn FindProxyForURL cho máy chủ proxy mà nó cần. Vì vậy, nếu bạn muốn tất cả các URL đi qua proxy bạn sẽ làm điều gì đó như:

function FindProxyForURL(url, host) { 
    return "PROXY localhost:1234"; 
} 

Nếu bạn chỉ muốn địa chỉ bên ngoài để đi để proxy localhost của bạn thì bạn sẽ làm điều gì đó như:

function FindProxyForURL(url, host) { 
    if (isPlainHostName(host)) { 
      return "DIRECT"; 
    } 
    return "PROXY localhost:1234"; 
} 
2

trên Windows:

đến Windows/System32/drivers/etc

trong notepad chạy as administrator

Thêm một cái gì đó như thế này để file host của bạn:

127.0.0.1 mysite.local 

sau đó tất cả dữ liệu đến máy chủ mà tại http://mysite.local sẽ được chọn của các proxy.

Ubuntu: /etc/hosts

Mac: http://decoding.wordpress.com/2009/04/06/how-to-edit-the-hosts-file-in-mac-os-x-leopard/

+0

Định dạng thực tế của tệp HOSTS của windows là' ​​tên IP'. – 1010

Các vấn đề liên quan