青青子衿, 悠悠我心, 但为君故, 沉吟至今
« 中国成为Facebook用户增长最快的国家电信ADSL升级到了12M带宽 »

解决Dropbox无法实时更新的问题

  本文背景是,中国到dropbox的http连接会被重置,但是https连接不受影响。如果背景改变了,则本文失效。本文主题是让dropbox客户端的http请求经socks代理访问dropbox服务器,而https请求不经代理直接访问,用这种方法来解决Dropbox客户端目前无法实时更新的问题。

  现象:在国内的多个电脑客户端使用同一个Dropbox帐号登录,实现协同办公等操作,但是一台电脑更新文件后,无法实时同步到其他电脑客户端。而在国外的网络环境没有这种现象。

  原因:目前在国内,dropbox被关键字屏蔽(Wildcard: .dropbox.com),但是客户端还能正常使用,因为客户端和服务器之间使用的是https加密传输。但只有一处是没有使用https的,就是 stork47.dropbox.com(笔者是这个地址,其他地方可能不一样)。这个服务器负责将服务器端(或其他客户端)发生的文件更新通知到其他客户端(笔者猜的,但应该差不多),然后其他客户端才会发起https请求去和服务器同步这些文件。实际中,是客户端每60秒向 stork47.dropbox.com查询一次,看是否有文件需要更新。因为该请求没有使用https连接,导致连接一直被RESET,所以某台客户端的更新无法实时反映到其他客户端。

  因为一般人可能没有这个需求,所以没多少人关注这个课题。像我以前也只是在家里和公司同步一些文件而已,没有实时更新的必要。有强烈需求的人,就设置让客户端全程走代理,可以解决上述问题,缺点是文件的更新速度受代理服务器速度的影响,大多数情况下没有直接连接的速度快。还有一部分人当需要更新时,直接重启客户端(甚至为此写了个脚本),因为客户端只在启动时才使用https连接检查更新,这样做的缺点显而易见。

解决Dropbox无法实时更新的问题

  解决方法:最近用privoxy,发现它可以做到分流http和https,于是试验了一下,果然可以分流dropbox的客户端请求了。就是前面说的,让http 请求走代理,而https请求不走。这样即满足了实时更新的需求,又兼顾了更新速度,可谓智能代理了。privoxy还有不少替代方案笔者没有试过的,比如polipo之类。以下是操作步骤。

  1,需要准备的东西:dropbox客户端、代理软件、privoxy。该方案应该与平台无关,但是笔者只在windows 7下试验过。

  2,打开privoxy的配置文件config.txt,在最后面添加这几行:

#   for dropbox: http --> SOCKS Proxy(19841), https --> direct
 forward-socks5   .dropbox.com             127.0.0.1:19841 .
 forward          .dropbox.com:443         .

  注意将19841修改为你自己的代理软件的端口。如果你的代理软件不是socks类型的,那么就不是加上面的几行,而是加这几行:

#   for dropbox: http --> HTTP Proxy(19842), https --> direct
 forward          .dropbox.com             127.0.0.1:19842
 forward          .dropbox.com:443         .

  注意好多地方有半角的.号,不要弄丢了。

  3,启动privoxy,将dropbox的代理设置为HTTP 127.0.0.1:8118,就OK了。

  如果有疑问可以留言讨论,如果有关于软件的其他用法的问题请另行google。

  来源:读者投稿,原文链接



  除非注明,月光博客文章均为原创,转载请以链接形式标明本文地址

  本文地址:http://www.williamlong.info/archives/2585.html
  • 文章排行:
  • 1.三叶草
  • 恩 回家试试,很好的文章
  • 2011/3/21 21:36:26   支持(22)反对(10) 回复
  • 2.i孔山刀剑立卡
  • 基本完全看不懂也听不明白!
  • 2011/3/28 14:51:25   支持(18)反对(9) 回复
  • 3.Erich
  • dropbox+goagent(HTTP代理,端口8087),仍然管用。
    yygc 于 2012-4-18 10:24:10 回复
    goagent一直提示连接不安全,貌似不能走https,这个你是怎么解决的?
  • 2012/3/24 20:09:53   支持(20)反对(12) 回复
  • 4.aguo
  • 这技术和在牛奶中检测三氯氰胺的技术一样,天朝特色啊
  • 2011/3/21 17:21:23   支持(19)反对(12) 回复
  • 5.JJ
  • 设置后更新确实很快,一般在一分钟内,但是出现新的问题就是Dropbox客户端怎么竟出现 “connecting”?
    Blask 于 2012-6-10 12:52:12 回复
    忘了加"."了吧?
  • 2012/3/21 12:29:09   支持(18)反对(12) 回复
  • 6.路过不留名
  • 直接改过hosts 一直正常用着 备选方案走ssh(已包年)
  • 2011/3/31 9:02:22   支持(19)反对(14) 回复
  • 7.Semidio
  • 其实只要在host里添加一句:
    stork47(dot)dropbox(dot)com(space)208(dot)43(dot)202(dot)48
    就可以了
  • 2011/3/22 0:40:53   支持(17)反对(13) 回复
  • 8.路过
  • 我的HTTPS通过SSH比直接连要快。。。。。直连了几天改回去了:(
  • 2011/3/28 16:55:27   支持(11)反对(7) 回复
  • 9.说怪
  • 现在咱已经改用金山快盘了啊。
  • 2011/3/20 19:17:37   支持(15)反对(12) 回复
  • 12.用户体验
  • 一堵墙,哎,堵住了大家自由的梦。
  • 2011/3/21 16:15:07   支持(18)反对(16) 回复
  • 13.fuckgfw
  • 今天在iTunes里想找网际直通车,直接搜“VPN”可以看到很多类似软件,但是只要点击,iTunes就报告网络连接错误,妈的以为我人品问题,结果翻墙之后一切正常。艹他娘的做贼心虚党。
  • 2011/4/4 23:32:25   支持(11)反对(9) 回复
  • 14.薛定谔猫态的大茶几
  • xp用户表示可行!
    win7 64位用户表示可行!
  • 2012/6/1 15:40:43   支持(13)反对(11) 回复
  • 15.Blask
  • forward-socks5 .dropbox(dot)com 127.0.0.1:19841 .
    这里是不是最后多了一个.点?
  • 2012/6/14 0:17:03   支持(11)反对(9) 回复
  • 17.yeluo10
  • 没有使用过,不知道怎么样!
    耳闻过华威桥如果 于 2011-3-21 14:05:59 回复
    gasgas的发生地方
  • 2011/3/21 10:50:59   支持(13)反对(12) 回复
  • 18.raphael
  • 我的dropbox最头疼的问题就是速度慢,2M的电信光纤,上传和下载速度只要最多十几K,请问博主这是什么原因造成的。有办法解决么?
    Vanish 于 2011-3-22 22:38:11 回复
    我也有同样问题!下载速度很慢!不知道什么原因!其他下载速度正常!
  • 2011/3/21 11:24:15   支持(14)反对(13) 回复
  • 21.凌兰
  • 凌兰
    楼主你好。首先我对这些电脑知识一窍不通。因为工作,需要解决该问题。
    以下是我不明白的地方:
    1. “需要准备的东西:dropbox客户端、代理软件、privoxy。” Privoxy就是您推荐使用的代理软件了。除此之外,还需要其它代理软件吗?
    2. “打开privoxy的配置文件config.txt,在最后面添加这几行: # for dropbox: http -->HTTP Proxy(19842),https --> direct”。 我注意到config-text最后几行是这样的:
    # and hide the command console.
    #
    #hide-console
    #
    #
    --我需要另起一行粘贴“#for dropbox:...."还是直接在最后一行,粘贴“for dropbox: ..."去掉#” ?

    3. “注意将19841修改为你自己的代理软件的端口。”我怎么才知道自己的代理端口号呢? 网上查了半天也没有相关解释。

    先谢谢楼主了。
    盼复。
  • 2012/9/17 13:47:15   支持(9)反对(8) 回复
  • 23.bush
  • 很好,我是用privoxy做廣告屏蔽的,代理分流還沒實踐過。這個privoxy的確是好東西,只是配置比較麻煩。
  • 2011/3/21 9:57:26   支持(19)反对(19) 回复
  • 24.asp126
  • 难怪我以前给网通服务器和电信服务器都装Dropbox同步,得关掉一个另一个才同步,不能同时开着,当时还以为Dropbox不支持多台同时同步。
  • 2011/3/21 14:06:54   支持(16)反对(16) 回复
  • 25.58cdbz
  • 速度很慢 不知道有没有办法 将速度提升上来啊
  • 2011/3/21 14:12:50   支持(14)反对(14) 回复
  • 27.nJ
  • 手动退出,再启动,就能同步其他电脑同步到云端的内容了。
  • 2011/3/22 23:14:52   支持(17)反对(17) 回复
  • 28.xx
  • 用起来太麻烦就算了,国内 DBank 代替也可以
  • 2011/3/30 10:07:42   支持(16)反对(16) 回复
  • 29.Zhu
  • 我的办法就是每隔几分钟关掉DropBox,然后再打开。
  • 2013/4/21 15:07:23   支持(8)反对(8) 回复
  • 30.mine260309
  • dropbox客户端ms正常,其实只是启动时能同步更新其它地方的改动,之后只能更新本地的改动,在其它地方的改动无法实时地更新到本地的
  • 2011/3/20 22:02:37   支持(14)反对(15) 回复
  • 32.陋室博客
  • box.net的网盘也墙了,只得考虑用国内的了
  • 2011/3/21 16:31:06   支持(12)反对(13) 回复
  • 34.xawsol
  • 这篇文章几乎被转载了几十次(甚至可能上百),但是要是哪位能出来解释一下privoxy的用法就好了;这么多技术博客转了这么多次到底给谁看呢。。。
    好像非常麻烦 于 2012-12-28 11:03:33 回复
    我想问下 各位大牛 如果不设置代理 他会多久更新一次?
    我说的自动更新
    或者 我直接每次都重启dropbox可以吗?
    好像非常麻烦 于 2012-12-28 11:04:49 回复
    我想问下 各位大牛 如果不设置代理 他会多久更新一次?
    我说的自动更新
    或者 我直接每次都重启dropbox可以吗?
  • 2011/6/5 18:10:52   支持(15)反对(16) 回复
  • 35.flz
  • 一开始使用了自动代理也没法立即检测到变化,还以为是Dropbox的问题唉,还是只好全称走代理了。
  • 2013/1/3 13:44:09   支持(7)反对(8) 回复
  • 41.good
  • 很好,还是喜欢国外的,国内的东西用着不放心!
  • 2011/3/21 13:37:57   支持(17)反对(21) 回复
  • 42.Hardi
  • goagent(端口:8087)+privoxy非常感谢,几乎秒同步!dropbox这么好的功能,在国内不能正常使用,真可惜,
  • 2013/10/31 15:38:40   支持(6)反对(10) 回复
  • 43.刘二闯
  • 没有用过,感觉国内的就可以了。
  • 2011/3/21 11:40:26   支持(13)反对(18) 回复
  • 45.说怪
  • 怎么我的第一条就被Akismet给垃圾掉了啊
  • 2011/3/20 19:15:47   支持(8)反对(15) 回复
  • 46.EmiNarcissus
  • 哎,SUGARSYNC也死了,DROPBOX居然没搞彻底,可以考虑转移了。。。
  • 2011/3/21 10:11:55   支持(8)反对(15) 回复
  • 47.plusium
  • 上传下载速度慢的只怕没办法。我这2M的adsl也是10来k的速度。
    如果你的代理速度大过这个速度的话,那干脆直接全程代理好了。免费的代理里面我还真没找到速度快的。
  • 2011/3/21 14:31:37   支持(5)反对(16) 回复
  • 48.薛定谔猫态的大茶几
  • 求polipo实现的方法!
  • 2012/6/1 17:06:45   支持(7)反对(21) 回复

发表评论:

 请勿发送垃圾信息、广告、推广信息或链接,这样的信息将会被直接删除。

订阅博客

  • 订阅我的博客:订阅我的博客
  • 关注新浪微博:关注新浪微博
  • 关注腾讯微博:关注腾讯微博
  • 关注认证空间:关注QQ空间
  • 通过电子邮件订阅
  • 通过QQ邮件订阅

站内搜索

热文排行


月度排行

本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享. 转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议.
This site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License.