SymProxy

可以将基于 HTTP 的符号存储配置为充当客户端计算机和其他符号存储之间的代理。 实现通过名为 SymProxy (Symproxy.dll) 的 ISAPI) 筛选器 (Internet 服务器应用程序编程接口。 SymProxy 服务器可用作 Internet 或公司网络中其他源的网关计算机。 下图显示了一个示例 SymProxy 配置。

显示示例 SymProxy 配置的关系图。

SymProxy 在许多情况下很有用。 例如:

  • 你正在实验室环境中调试许多系统,其中计算机未连接到公司网络,但符号存储在网络中,必须使用集成 Windows 身份验证 (IWA) 进行访问。

  • 企业计算环境包括一个防火墙,该防火墙阻止正在调试的计算机访问 Internet,并且必须从 Internet 网站获取符号。

  • 你希望为公司中的所有用户提供单个符号路径,以便他们无需知道或关心符号所在的位置,并且无需用户干预即可添加新的符号存储区。

  • 你有一个远程站点,该站点在物理上远离公司的其他资源,并且网络访问速度缓慢。 此系统可用于获取符号并将其缓存到远程站点。

若要安装 SymProxy,必须手动将文件复制到正确的位置,配置注册表,选择网络安全凭据,并将 Internet Information Services (IIS) 。 若要确保正确配置 HTTP 符号存储,请参阅 HTTP 符号存储

多符号服务器性能注意事项

每个虚拟目录可以与多个 (上游) 符号存储相关联。 单独查询每个符号存储区。 为了获得性能,应在 Internet HTTP 服务器之前处理本地 SMB 服务器。 与调试器符号路径不同,可以在 SymProxy 符号路径中指定多个 HTTP 符号存储。 每个虚拟目录最多支持 10 个条目。

SymProxy 符号路径

SymProxy 将) 符号路径值定义的 (注册表拆分为各个条目,并使用每个条目生成基于 SRV* 的符号路径来检索文件。 它使用虚拟目录的文件夹作为每个查询中的下游存储 - 实际上,将上游存储合并到单个下游符号存储。

SymProxy 使用的) 符号路径生成的 (等效于:

SRV*<Virtual Directory Folder>*<SymbolPath Entry #N>

在此示例中,一个 UNC 路径和两个 HTTP 路径与虚拟目录相关联,以合并来自公司符号服务器、Microsoft 和第三方 (Contoso) 的符号。 SymProxy SymbolPath 的设置如下所示:

\\MainOffice\Symbols;https://msdl.microsoft.com/download/symbols;
https://symbols.contoso.com/symbols

首先使用) 符号路径生成的 (查询 Main Office 符号文件共享:

SRV*D:\SymStore\Symbols*\\MainOffice\Symbols

如果未找到符号文件,将使用) 符号路径生成的 (查询 Microsoft 符号存储:

SRV*D:\SymStore\Symbols*https://msdl.microsoft.com/download/symbols

如果仍未找到该文件,将使用生成的 (查询 Contoso 符号存储 (https://symbols.contoso.com/symbols) ,) 符号路径:

SRV*D:\SymStore\Symbols*https://symbols.contoso.com/symbols

本节包括:

安装 SymProxy

配置注册表

选择网络安全凭据

为 SymProxy 配置 IIS

设置排除列表

处理不可用的符号存储

处理文件指针

缓存获取的符号文件