Surge Knowledge Base
中文
中文
  • Surge Knowledge Base
  • Guidelines
    • 智能策略组
    • Surge Ponte 指引
    • Surge tvOS
    • Surge 网关模式性能问题排查指南
    • 配置分离
  • Technotes
    • 关于 TCP Fast Open
    • 关于 HTTP 协议版本
    • DNS 的本地与代理解析
    • 自动类策略组的测试策略
    • 不同 REJECT 策略的区别
    • 关于 User Agent 规则
    • NAT 类型详解
  • FAQ
    • Surge 常见问题
    • Surge iOS TestFlight
    • Surge Mac 重置
  • License
    • Surge 购买前常见问题
    • Surge iOS 授权相关问题
    • Surge iOS 功能订阅更新说明
    • Surge Mac 授权相关问题
  • Release Notes
    • Surge Mac 5.0
    • Surge Mac 更新日志
    • Surge iOS 更新日志
    • Surge Mac 历史版本
Powered by GitBook
On this page
  1. Technotes

关于 User Agent 规则

Previous不同 REJECT 策略的区别NextNAT 类型详解

Last updated 2 years ago

Surge 的规则系统中有提供依据 User-Agent 进行判别的规则。使用该规则时请注意:

  1. 该规则仅对 HTTP/HTTPS 请求有效。如果是一个 raw TCP 请求中提取的 HTTP header,规则无法生效,需配置 force-http-engine 参数,详见。

  2. 对于 HTTPS 请求,存在发给 HTTP 代理的 CONNECT 请求 User-Agent 和真实的 HTTP 请求 User-Agent ,两者的内容可能相同也可能不同。前者的内容通常是由系统生成,不可被 app 调整。在未开启 MITM 的情况下,匹配时仅对前者生效。开启 MITM 后仅对后者生效。

  3. 在 iOS 15 系统后,系统出于隐私保护考虑,不再于 CONNECT 请求中提供 User-Agent,这意味着对于所有 HTTPS 请求,在未开启 MITM 时,User-Agent 均不可见且规则无法生效。

《Surge 官方中文指引:理解 Surge 原理 》