【问题标题】:Issue on IIS about Downloading Files from iOSIIS 上关于从 iOS 下载文件的问题
【发布时间】:2017-08-18 12:02:46
【问题描述】:

我有一个从我的服务器下载文件的 iOS 应用程序。最近我将服务器从 Windows Server 2012 升级到 Windows Server 2016。突然升级后,我的 iOS 应用开始无法从新服务器下载文件。

在升级我的服务器时,我还更改了我的 SSL 证书并开始使用 Wilcard SSL 证书。这就是为什么我认为某些 SSL 问题是原因。但是当我在旧服务器上尝试时,我看到我的应用从旧服务器下载文件没有问题。

然后我以为我的服务器丢包了。当我在大约 9000 个数据包后测试它时,我只看到一个数据包丢失;所以也不是这样。

然后我想可能是 IIS 中的某些故障导致连接丢失。当我测试它(IIS 失败的请求日志)时,我没有发现任何问题。

当我调试 iOS 应用程序时,我看到以下日志。我找不到这个问题的正确答案。

有什么想法可以去哪里看吗?

以前的操作系统和 ISS 版本: Windows Server 2012(内部版本 9200)/IIS 8 (8.0.9200.16384)

以前的操作系统和 ISS 版本: Windows Server 2016 (1607 - Build 1493.1593) / IIS 10 (10.0.14393.0)

iOS 应用网络库: AFNetworking

iOS 错误日志:

[] nw_socket_set_receive_low_water_mark setsockopt SO_RCVLOWAT 3537 fd 28 失败:[22] 参数无效

[] nw_endpoint_handler_add_write_request [49.1 MyIP:443 failed socket-flow (satisfied)] 无法接受写入请求

[] tcp_connection_write_eof_block_invoke 收到写关闭回调 错误:[22] 无效参数

【问题讨论】:

    标签: ios windows http iis afnetworking


    【解决方案1】:

    这完全是关于 IIS 10 上默认的 HTTP/2。没有关闭它的选项,但我使用以下注册表项在服务器上完全关闭它。现在我的文件从 iOS 下载没有问题。

    当然,我必须解决 iOS 上的问题,让它通过 HTTP/2 下载文件,但现在它正在工作。

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
    
    EnableHttp2Tls REG_DWORD 0
    
    EnableHttp2Cleartext REG_DWORD 0
    

    【讨论】:

      猜你喜欢
      • 2013-08-03
      • 2011-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多