[已解决] iOS 9.3.2 升级会使 PAC 服务无效

我发现升级完之后,这样的规则会无效
v.youku.com:[/^/player//i,/^/v_show//i],

改成这样才行
v.youku.com:[/^//i],

这一个规则,我另外一部 9.3.1 iPad 就没问题。 不知道是PAC的问题,还是9.3.2的问题。 为保险起见,暂时不要升级去 9.3.2.

v.youku.com:[/^\//i] 相当于是整个域名都代理了

欢迎仔细测试下,如果能找到更细致的 URL pattern,欢迎提交个 pull request

@zhuzhuor 是之前细致的 URL pattern 在 升级完 ios 9.3.2 之后全变无效。我怀疑是 9.3.2 的问题。

举个例子。

细致的规则。
ipservice.163.com”:[/^/isFromMainland/i],

9.3.2 无效
9.3.1 有效

整个代理的规则
"ipservice.163.com":[/^//i],

9.3.2 有效
9.3.1 有效

Sorry,上次回复的时候没看明白

不过我刚才专门把手机升级到 9.3.2 测试了下,没能 reproduce 你这问题,你再想办法试试看?

PS,看网上说这次 iOS 升级 还可能会 brick iPad…

好吧,我这边重新测试了下,的确是有这样的问题…

我去 social network 上广而告之一下

Update:
又仔细测试了下

function FindProxyForURL(url, host) {
  if (shExpMatch(url, "http://ipservice.163.com/*")) {
    return "PROXY proxy.uku.im:443";
  }
  return "DIRECT";
}

这就可以。但是多加一个字母 i 都不行,例如

  if (shExpMatch(url, "http://ipservice.163.com/i*")) {

翻来覆去测试各种 regex 以及 shExpMatch 的组合都不行
让我想起来之前遇到的 PAC 在 IE 上不能起效的问题,原因是 IE 会对域名先运行一遍 PAC,然后 cache 下来代理的结果

这个问题不知道有没有办法去和 APPLE 报一下。我昨天也试了各种组合都不行。 :disappointed_relieved:

可以在这里向 Apple 报告 iOS bug:https://developer.apple.com/bug-reporting/

我已经 report 了
但是最好有更多的人前去报告下,更加能引起重视
就说新版的 iOS 不支持非常细致的 PAC 规则 blabla 就行了

Apple 的客服今天回复了,说因为 security reasons,URL 里面不会有精确的 path component 了
如果之后 Apple 还是不改过来的话,在 PAC 里只能全域名都代理了

这 security reasons 并不 make sense,Chrome Firefox 之类的浏览器都支持通过具体的 URL 来选择代理

Apple 回复我说我报问题 26466369 和之前另外一个 23241089 一样。

因为Apple Bug Report 只能查自己报的问题。我去 https://openradar.appspot.com/ 查看有没有相关的资料。结果发现下下面这个结果。
https://openradar.appspot.com/24937162 :cold_sweat:

苹果工程师你觉得我是傻瓜吗。:disappointed_relieved:

是不是macOS也有这个问题?

决定让 PAC 文件只基于域名做判断,先解决用户的问题最重要
估计会增大一些 PAC 服务器的流量,先跑两天看看

https://github.com/uku/Unblock-Youku/commit/b8a8f2908e7096f97ccd9266f22ccd7ad7a94f3c

我已经升过了QAQ
那现在请问怎么办啊

我看10出来了,10能用么?

好吧。。只是beta版。。。

现在pac文件已经改过来了,理论上应该能用的了。

可是我还是不行啊。我现在在视频信息页面不再显示有地区限制,但是一点开始视频,就不行,加载不了。试了bilibili和pptv都不行。

好了,我发现用Safari能看bilibili,但是bilibili的客户端就一直是 加载失败

Bilibili的ios端是有点问题,因为据说那链接是加密链接,pac暂时没法支持

是 HTTPS 链接吗?PAC 也是支持 HTTPS 链接的。是哪个 URL,你发个 pull request?多谢

他说的是版权番的链接,确实用了pac在ios app 上无法看