回到国内,要访问一些网站就必须想办法绕过 The Great Firewall of China。我有时用 ssh tunnel 使用自己在国外的主机上配置好的代理,有时就使用学校提供的代理。

我比较喜欢 KDE 下 Konqueror 的代理配置方式,可以指定只在访问某些站点时使用代理。大多数浏览器都只能指定不使用代理的网站,所以在大多数情况下都在不必要地使用代理。前两天找了一下代理配置脚本的文档,找到了解决办法。其实很简单,写一个叫 FindProxyForURL 的 JavaScript 函数,比如:
function FindProxyForURL(url, host)
{
// 需要代理的网站
var npdoms = [".google.com",
".bbc.com",
".bbc.co.uk",
".wikipedia.org",
".blogspot.com",
".faqts.com"];
for (var i = 0; i < npdoms.length; i++) {
if (dnsDomainIs(host, npdoms[i])){
// 在下面填入你的代理服务器地址和端口
return "PROXY yourproxy.example.com:3129";
}
}
return "DIRECT";
}
浏览器调用这个函数来确定如何访问一个URL,这个函数的返回值如果是 "DIRECT" 就是直接访问,如果是 "PROXY host:port" 就使用指定的 HTTP 代理,另外也可以用 "SOCKS host:port" 来指定 SOCKS 代理。
把它存为一个后缀为 .pac 的文件,然后在浏览器里的代理配置里选自动配置脚本,把地址填进去。比如如果在windows下把上面的文件存为 c:\proxy-conf.pac 就在 Firefox 的自动配置脚本地址栏里填 file://c:/proxy-conf.pac。
更详细的解释可以在这里找到。
Post a Comment