# 【K18】iOS操作系统使用Chrome浏览器访问个别HTTP2网站Deny Profile未生效 | ID | Creation Date | Assignee | Status | |----|----------------|----------|--------| | OMPUB-462 | 2022-04-22T11:41:54.000+0800 | 冯伟浩 | 已关闭 | --- 客户在np系统上配了deny策略 一个策略下面配了两个网站 访问目标网站的时候 替换成客户上传的html文件里面的内容 这两个网站一个是me.me 一个是pinterest.ru 现在me.me 正常deny了 也能替换成他上传的那个html的内容 但是访问pinterest.ru的时候不能正常替换     **fengweihao** commented on *2022-04-24T10:01:40.335+0800*: 暂时解决方案: 关于pinterest.ru在IOS手机谷歌浏览器上的deny情况下无法显示Profile页面,在策略条件中增加应答头条件,可暂时解决此问题就 问题原因: 由于HTTP2 Deny情况下控制帧乱序引起 正常处理帧流程为: C端Seting帧-S端Seting帧-C端get请求-S端get应答 异常处理帧流程为: C端Seting帧-C端get请求-S端get应答-S端Seting帧 --- **zhengchao** commented on *2022-04-24T10:39:45.188+0800*: 可以通过单元测试用例稳定重现吗? --- **fengweihao** commented on *2022-04-24T11:09:16.417+0800*: 目前单元测试用例中没有关于控制帧的测试 此问题的主要原因在于,如果服务器回复的seting帧,晚于deny发送的profile应答体,IOS上的谷歌浏览器报无效应答内容,window上显示正常 经多次测试,如果drop服务器回复的seting帧,IOS上依旧报错 原处理流程 get请求->pangu扫描命中->代理发送应答内容 现在流程修改为: get请求->pangu扫描命中->代理转发给服务的端->服务端回复->代理丢弃服务端回复内容,发送Profile指定的应答内容 以上问题可解决 --- **zhengchao** commented on *2022-04-24T14:31:56.944+0800*: 为tfe或自检增加该单元测试。修改后的流程会对以前的处理逻辑有影响吗? --- **fengweihao** commented on *2022-04-24T16:18:28.390+0800*: 以上修改后,如果代理策略在配置URL或者请求头时,会对Deny、Redirect、Hijack的处理逻辑造成影响 也就是HTTP2解析层多了以上这段处理: 代理转发给服务的端->服务端回复->代理丢弃服务端回复内容,发送指定的应答内容 --- **zhengchao** commented on *2022-04-24T18:09:00.356+0800*: 找个不影响正常处理逻辑的改法 --- **fengweihao** commented on *2022-04-26T18:04:49.091+0800*: 目前修改为: 在配置url或者请求头时,命中Deny策略后,判断 客户端句柄iframe帧状态是否为NGHTTP2_IB_READ_FIRST_SETTINGS,如果为NGHTTP2_IB_READ_FIRST_SETTINGS 则由代理服务端句柄初始化发送Settings帧信息,而后发送应答信息。 --- **gitlab** commented on *2022-04-28T14:03:53.890+0800*: [冯伟浩|https://git.mesalab.cn/fengweihao] mentioned this issue in [a commit|https://git.mesalab.cn/tango/tfe/-/commit/4c3d929d73bce8bc93d91e39fa6a2e655f1bb859] of [TSG / tfe|https://git.mesalab.cn/tango/tfe] on branch [bugfix-ompub-562-deny-failed|https://git.mesalab.cn/tango/tfe/-/tree/bugfix-ompub-562-deny-failed]:{quote}OMPUB-462 iOS操作系统使用Chrome浏览器访问个别HTTP2网站Deny Profile未生效{quote} --- **fengweihao** commented on *2022-05-05T10:10:30.715+0800*: 目前K现场未在测试或者浮现此问题,05版本更新复测代理功能一轮 --- **gitlab** commented on *2022-05-06T17:41:59.608+0800*: [冯伟浩|https://git.mesalab.cn/fengweihao] mentioned this issue in [a merge request|https://git.mesalab.cn/tango/tfe/-/merge_requests/494] of [TSG / tfe|https://git.mesalab.cn/tango/tfe] on branch [bugfix-ompub-562-deny-failed|https://git.mesalab.cn/tango/tfe/-/tree/bugfix-ompub-562-deny-failed]:{quote}OMPUB-462 iOS操作系统使用Chrome浏览器访问个别HTTP2网站Deny Profile未生效{quote} --- **gitlab** commented on *2022-05-07T14:26:43.558+0800*: [卢文朋|https://git.mesalab.cn/luwenpeng] mentioned this issue in [a merge request|https://git.mesalab.cn/tango/tfe/-/merge_requests/495] of [TSG / tfe|https://git.mesalab.cn/tango/tfe] on branch [develop-4.6|https://git.mesalab.cn/tango/tfe/-/tree/develop-4.6]:{quote}OMPUB-462 iOS操作系统使用Chrome浏览器访问个别HTTP2网站Deny Profile未生效{quote} --- **gitlab** commented on *2022-05-07T16:21:30.668+0800*: [冯伟浩|https://git.mesalab.cn/fengweihao] mentioned this issue in [a commit|https://git.mesalab.cn/tsg/tsg-os-buildimage/-/commit/5b031c5405308d87f56d8c69744f93d14d5f43fd] of [TSG / tsg-os-buildimage|https://git.mesalab.cn/tsg/tsg-os-buildimage] on branch [update-tfe-to-v4.6.14|https://git.mesalab.cn/tsg/tsg-os-buildimage/-/tree/update-tfe-to-v4.6.14]:{quote}更新tfe到v4.6.14, 版本修改: OMPUB-462 iOS操作系统使用Chrome浏览器访问个别HTTP2网站Deny Profile未生效{quote} --- **gitlab** commented on *2022-05-07T16:21:48.660+0800*: [冯伟浩|https://git.mesalab.cn/fengweihao] mentioned this issue in [a merge request|https://git.mesalab.cn/tsg/tsg-os-buildimage/-/merge_requests/759] of [TSG / tsg-os-buildimage|https://git.mesalab.cn/tsg/tsg-os-buildimage] on branch [update-tfe-to-v4.6.14|https://git.mesalab.cn/tsg/tsg-os-buildimage/-/tree/update-tfe-to-v4.6.14]:{quote}更新tfe到v4.6.14, 版本修改: OMPUB-462 iOS操作系统使用Chrome浏览器访问个别HTTP2网站Deny Profile未生效{quote} --- **dongxiaoyan** commented on *2022-05-12T16:15:48.964+0800*: 信息港环境22.05版本复测通过。 --- ## Attachments