Dropbox是现在最好的云存储服务(没有之一),所以一直它都是我云端应用的首选。其实一直用着都没有觉得什么异常,后来才知道说,由于GFW的存在,Dropbox的文件列表是不能实时刷新的,举例来说,当你A主机文件发生变化时,是可以马上同步到云端,但是这个时候,另外一台B主机并不能实时获取到云端文件变化信息,除非你重新启动dropbox客户端,一般我家里的电脑回家开机之后就会自动同步,所以我并没有太大的感觉。
这个问题产生的原因,主要是因为Dropbox的文件传输走的是https协议,所以可以顺利穿墙而过,而查询云端文件变化的走的是http协议,就被GFW了,更多细节在月光的博客上有过相关的说明,你可以戳这里看到!而还有一些说明在这里(BLOGSPOT需要翻墙)也有介绍。
原理明白了,我们就来说解决方法,目标就是让Dropbox的http通过代理走,而https直连,这可以通过一个叫做Privoxy的软件来完成,下载链接请戳这里!安装完成之后,你需要打开config.txt 文件,在最后加上下面的内容(注意那个小点哟):
# for dropbox: http –> SOCKS Proxy(7077), https –> direct
forward-socks5 .dropbox.com 127.0.0.1:7077 .
forward .dropbox.com:443 .
配置完成之后,重启一下就不用管了,这里看到的7077是本机SSH代理的端口,请自行修改。当然这里要说一下,如果你讨厌那个P图标碍眼,可以将Privoxy作为系统服务启动,你所要做的,只是到它所在的目录运行命令行:Privoxy –install ,然后就可以在系统服务里面配置自动启动了!
接下来我们来弄SSH代理,我相信很多人用的是MyEntunnel, 但是都说不太稳定,所以这次我就换了另外一款,就是 Bitvise Tunnelier,你可以到这里下载到这个客户端。然后进行如下设置:
- 在login界面:配置服务器,端口,用户名,选择密码认证并输入密码
- 在Options界面:选择一直自动连接,然后取消在Login时所进行的操作,如 Open SFTP
- 在Service界面:配置本地端口,7077(和前面Privoxy里面对应)
- 保存成一个Profile,然后测试一下登录就OK了!
如果你希望它无痛无痒自启动,可以建立快捷方式,在命令行最后加上-loginOnStartup,然后再丢到系统的启动目录里面就可以了。
现在我们配置完成了SSH代理,以及Privoxy,最后我们来配置Dropbox,在Preferences设置中找到Proxies,然后选择HTTP模式,代理地址填写127.0.0.1,端口8118 就可以了!8118是Privoxy的默认的端口号,如果你喜欢,自己到Privoxy里面改掉也可以!
大功告成,试试看通过网页上传一个小文件到Dropbox,文件一传完,本地的Dropbox马上就开始出现小箭头旋转,然后就下载到本地了!这下,大家,满足了吧!咱们下次再见!!!