1、首先iOS的Safari是支持http重定向到https
1>前置条件是当前的http//:www.yuming.com/config....的yuming.com这个一级域名已经在浏览器或者指定的APP中使用了https//:www.yuming.com/config.... 并且请求成功过,那么这个浏览器或者这个APP的网络请求,他会缓存https相关的文件,这样有网络或者没有网络,你去请求http//:www.yuming.com/json,相同域名的其他url,iOS16.x的设备都会将http重定向成https//:www.yuming.com/json,Tips:识别原理是根据一级域名来判断的。
2、解决方案
1> app 如果只是一次测试触发了这种缓存文件,那么删除APP 重启手机就不会重定向了
2> Safari 这种的 需要删除记录、重启手机看是否解决,我这里没有做过多测试
如果以上都不能解决,那么就要将yuming.com让运维技术配置成支持https的就可以了
3、如果http//:www.yuming.com:10033/config这个域名是加端口的,那么即便是被重定向成https//:www.yuming.com:10033/config,依旧会报Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made" 即:"发生SSL错误,无法建立到服务器的安全连接"错误,这是因为10033端口转发已经提供给http了,在这种重定向仅仅加s的情况下,运维后台的配置是无法通过10033判断是http还是https,所以就会报无法链接。
1>如果是通过端口转发的 就需要运维想一下其他解决方案
1.1>我们这边因为不能舍弃掉http带端口转发这种运维架构,所以新增了一个加二级域名的方案 即:https//:app-10033.yuming.com/config解决的