Я новичок в 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