Сбой Squid 301/302 редирект? - PullRequest
2 голосов
/ 02 июля 2011

Я новичок в squid и хочу использовать его (squid 2.7) для перенаправления, например www.baidu.com -> www.google.com. Поэтому я включил модуль перенаправления в squid, используя скрипт perl:

#!/usr/bin/perl
$|=1;
    while (<>) {
            @X = split;
            $url = $X[0];
            if ($url =~ /^http:\/\/www\.baidu\.com/) {
                    print “302:https:\/\/www\.google\.com\n”;
            }    
            else {
                    print “$url\n”;
            }
        }

В squid.conf добавьте:

rewrite_program /etc/squid/redirect.pl
redirect_rewrites_host_header off
redirect_children 20

Клиентскому браузеру не удалось получить доступ к этой веб-странице, я проверил пакеты по сети:

client --> proxy  HTTP GET http://www.baidu.com/ HTTP/1.1
proxy  --> client HTTP HTTP/1.0 301 Moved Permanently

Тогда клиентский браузер просто ждал там без последующего трафика.

Кто-нибудь знает причину?

И в чем разница между redirect_program / url_rewrite_program / location_rewrite_program

...