Windows AppContainer 无法访问本地代理:检查 loopback 隔离
当 AppContainer 应用无法访问桌面客户端可以正常使用的代理时,检查目标包的 loopback 隔离设置。
AppContainer 应用可能无法访问同一台 Windows 计算机上的代理,而桌面浏览器却能正常使用它。网络隔离会在代理身份验证开始之前就阻断本地连接。
针对性的开发测试中,先确定包系列名称,并查看现有豁免:
Get-AppxPackage -Name 'Example.App' |
Select-Object Name, PackageFamilyName
CheckNetIsolation LoopbackExempt -s
在提升权限的命令提示符中,只添加目标 AppContainer:
CheckNetIsolation LoopbackExempt -a -n="PACKAGE_FAMILY_NAME"
把占位符替换为实际名称。要移除该测试豁免:
CheckNetIsolation LoopbackExempt -d -n="PACKAGE_FAMILY_NAME"
该豁免允许此 AppContainer 进行 loopback 通信,但它不会选择代理端点、不会启动代理服务,也不会提供中间账号。
三项检查要分开:监听器存在、应用能连上它、代理接受请求。仅导入 WinHTTP 设置并不能解除 AppContainer 的 loopback 限制。
这是 Windows 应用开发的故障排查手段,并不是对所有打包应用或完全信任的桌面应用的通用要求,也不应成为每个已安装应用的豁免。