Flash 重定向

重要提示

2017 年 7 月 25 日,Adobe 宣布了 Flash 生命周期结束 (EOL)。Adobe 计划在 2020 年底停止更新和分发 Flash Player。

Microsoft 宣布在此 Adobe 日期之前在 Internet Explorer 中逐步停止 Flash 支持。他们将在 2020 年底前从 Windows 中删除 Flash。那时,用户无法再在 Internet Explorer 中启用或运行 Flash。

在 2020 年底前,Citrix 会遵循 Microsoft 策略并继续维护和支持 HDX Flash 重定向。我们尚未决定在哪些版本的 Citrix Virtual Apps and Desktops 中排除 Flash 重定向代码,但我们建议您尽可能切换到 HTML5 视频重定向。HTML5 视频重定向非常适合控制多媒体内容。例如,公司通信视频、培训视频或第三方托管内容时。

有关 HTML5 视频重定向的详细信息,请参阅 HTML5 多媒体重定向

Flash 重定向功能可将大部分 Adobe Flash 内容(包括动画、视频和应用程序)处理工作转移到连接到 LAN 和 WAN 的用户 Windows 和 32 位 Linux x86 设备。Flash 重定向降低了服务器和网络负载,使得在确保高清晰度用户体验的同时增强了可扩展性。配置 Flash 重定向时,必须同时进行服务器端设置和客户端设置。

警告

使用 Flash 重定向功能时会在用户设备和服务器组件之间进行大量交互。只应在用户设备和服务器之间无需安全分隔的环境中使用此功能。此外,用户设备应配置为只在可信服务器上使用此功能。由于 Flash 重定向功能要求在用户设备上安装 Adobe Flash Player,因此,只有在 Flash Player 自身处于安全状态时启用此功能。

Flash 重定向功能在客户端和服务器上均受支持。如果客户端支持第二代 Flash 重定向功能,Flash 内容将在客户端上呈现。Flash 重定向功能包括支持用户通过 WAN 进行连接、智能回退和 URL 兼容性列表;请参阅下文了解详细信息。

Flash 重定向使用服务器上的 Windows 事件日志记录来记录 Flash 事件。事件日志指示是否正在使用 Flash 重定向,并提供问题的详细信息。Flash 重定向记录的所有事件都具有以下共性:

  • Flash 重定向向应用程序日志报告事件。
  • 在 Windows 10、Windows 8 和 Windows 7 系统上,特定于 Flash 重定向功能的日志将显示在“应用程序和服务日志”节点中。
  • “源”值为 Flash。
  • “类别”值为“无”。

有关 HDX Flash 最新更新的兼容性,请参阅 CTX136588

在服务器上配置 Flash 重定向

要在服务器上配置 Flash 重定向,请使用以下 Citrix 策略设置。有关详细信息,请参阅 Flash 重定向策略设置

  • 默认情况下,Flash 重定向处于启用状态。要为个别 Web 页面和 Flash 实例覆盖此默认行为,请使用 Flash URL 兼容性列表设置。
  • Flash 智能回退。检测 Flash 小电影的实例(例如,常用于播放广告的 Flash 小电影),并在服务器上呈现这些实例,而不是通过重定向在用户设备上呈现。此优化功能不会在加载 Web 页面或 Flash 应用程序时导致任何中断或故障。默认情况下,启用 Flash 智能回退。要重定向所有 Flash 内容实例,使其呈现在用户设备上,请禁用此策略设置。有些 Flash 内容可能无法成功重定向。
  • Flash 服务器端内容提取 URL 列表。允许您指定包含可以将其 Flash 内容下载到服务器,然后传输到用户设备以进行呈现的 Web 站点。(默认情况下,Flash 重定向功能会将 Flash 内容直接下载到具有客户端提取功能的用户设备。)此设置支持(并且需要)用户设备上的“启用服务器端内容提取”设置。此设置主要用于 Intranet 站点和内部 Flash 应用程序。有关详细信息,请参阅下文。它还支持大多数 Internet 站点,并且可以在用户设备对 Internet 没有直接访问权限时使用。例如,Citrix Virtual Apps and Desktops 提供该连接时。 服务器端内容提取功能不支持使用实时消息传送协议 (Real Time Messaging Protocols, RTMP) 的 Flash 应用程序。请改为使用服务器端呈现,该功能支持 HTTP 和 HTTPS。
  • Flash URL 兼容性列表。指定在何处呈现来自所列 Web 站点的 Flash 内容:在用户设备上、服务器上还是被阻止。
  • Flash 背景色列表。可以将 Web 页面与 Flash 实例的颜色相匹配,从而在使用 Flash 重定向时改进 Web 页面的外观。

在用户设备上配置 Flash 重定向

在用户设备上安装 Citrix Workspace 应用程序和 Adobe Flash Player。无需在用户设备上执行更多配置。

可以使用 Active Directory 组策略对象更改默认设置。导入并添加 HDX MediaStream Flash 重定向 - 客户端管理模板 (HdxFlashClient.adm),位于以下文件夹中:

  • 对于 32 位计算机:%Program Files%\Citrix\ICA Client\Configuration\language。
  • 对于 64 位计算机:%Program Files (x86)%\Citrix\ICA Client\Configuration\language。

策略设置显示在“管理模板”>“经典管理模板(ADM)”>“HDX MediaStream Flash 重定向 - 客户端”下。请参阅 Microsoft Active Directory 文档了解 GPO 和模板的详细信息。

更改 Flash 重定向功能的使用时间:

“在用户设备上启用 HDX MediaStream Flash 重定向”策略设置与服务器端设置结合使用,可控制是否将 Adobe Flash 内容重定向到用户设备,以便在本地呈现。默认情况下,Flash 重定向处于启用状态,并使用智能网络检测功能来确定何时在用户设备上播放 Flash 内容。

如果未设置配置并且使用 Desktop Lock,则默认情况下,将在用户设备上启用 Flash 重定向。

要更改 Flash 重定向功能的使用时间,或在用户设备上禁用 Flash 重定向功能,请执行以下操作:

  1. 从“设置”列表中,选择“在用户设备上启用 HDX MediaStream Flash 重定向”,然后选择“策略设置”。
  2. 选择未配置、启用(默认设置)或禁用。
  3. 如果选择“已启用”,请从“使用 HDX MediaStream Flash 重定向”列表中选择一个选项:
    • 要在具有所需配置时使用最新 Flash 重定向功能,并在没有此配置时还原为在服务器端呈现,请选择“仅使用第二代”。

    • 要始终使用 Flash 重定向,请选择“始终”。将在用户设备上播放 Flash 内容。

    • 要从不使用 Flash 重定向,请选择“从不”。将在服务器上播放 Flash 内容。

    • 要使用智能网络检测功能评估客户端网络的安全级别,以确定何时使用 Flash 重定向功能,请选择“询问”(默认设置)。如果无法确定网络安全性,系统会询问用户是否使用 Flash 重定向。如果无法确定网络安全级别,系统会提示用户选择是否使用 Flash 重定向。

      下图显示了 Flash 重定向针对各种网络类型的处理方式。

检测 Flash 重定向图片

用户可以从“Citrix Workspace 应用程序 - Desktop Viewer 首选项”对话框的“Flash”选项卡中选择“优化”或“不优化”,来覆盖智能网络检测。根据用户设备上的 Flash 重定向配置情况,可选择的选项将有所不同,如下图所示。

控制 Flash 重定向图片

在客户端与服务器端之间同步 HTTP Cookie:

默认情况下,客户端与服务器端之间的 HTTP Cookie 同步已禁用。启用同步功能,以从服务器下载 HTTP Cookie。然后将使用这些 HTTP Cookie 进行客户端内容提取,并可供包含 Flash 内容的站点在需要时使用。

客户端 Cookie 在同步期间不被替换。即使之后禁用了同步策略,这些 Cookie 仍保持可用。

  1. 从“设置”列表中,选择 Enable synchronization of the client-side HTTP cookies with the server-side(启用客户端与服务器端之间的 HTTP Cookie 同步),然后单击策略设置。
  2. 选择“未配置”、“已启用”或“已禁用”(默认设置)。

启用服务器端内容提取:

默认情况下,Flash 重定向功能会将 Adobe Flash 内容直接下载到播放此内容的用户设备。启用服务器端内容提取会使 Flash 内容下载到服务器上,然后再发送到用户设备。除非有覆盖策略(例如通过 Flash URL 兼容性列表策略设置阻止某个站点),否则 Flash 内容将在用户设备上播放。

当用户设备通过 NetScaler Gateway 连接到内部站点以及用户设备没有直接访问 Internet 的权限时,会频繁使用服务器端内容提取。

服务器端内容提取功能不支持使用实时消息传送协议 (Real Time Messaging Protocols, RTMP) 的 Flash 应用程序。而应对此类站点使用服务器端呈现功能。

Flash 重定向功能支持三个用于服务器端内容提取功能的启用选项。其中的两个选项包含在用户设备上缓存服务器端内容的功能。由于用户设备上已经有重新使用的内容用于呈现,因此这样可以提高性能。该缓存的内容与用户设备上缓存的其他 HTTP 内容存储在不同的位置。

如果任一启用选项被选中并且客户端 .swf 文件提取操作失败,将自动开始回退到服务器端内容提取。

要启用服务器端内容提取功能,必须同时在客户端设备和服务器上进行设置。

  1. 从“设置”列表中,选择“启用服务器端内容提取”,然后选择“策略设置”。

  2. 选择“未配置”、“已启用”或“已禁用”(默认设置)。如果启用此设置,请从服务器端内容提取状态列表中选择一个选项:

    选项 说明
    已禁用 禁用服务器端内容提取,以覆盖服务器上的 Flash 服务器端内容提取 URL 列表设置。服务器端内容提取回退也已禁用。
    已启用 为 Flash 服务器端内容提取 URL 列表中所标识的 Web 页面和 Flash 应用程序启用服务器端内容提取。可以使用服务器端内容提取回退功能,但是不会缓存 Flash 内容。
    已启用(永久缓存) 为“Flash 服务器端内容提取 URL 列表”中所标识的 Web 页面和 Flash 应用程序启用服务器端内容提取。可以使用服务器端内容提取回退。通过服务器端提取而获得的内容缓存在用户设备上,并在会话间存储。
    已启用(临时缓存) 为“Flash 服务器端内容提取 URL 列表”中所标识的 Web 页面和 Flash 应用程序启用服务器端内容提取。可以使用服务器端内容提取回退。通过服务器端提取而获得的内容缓存在用户设备上,并在会话结束时删除。
  3. 在服务器上,启用 Flash 服务器端内容提取 URL 列表策略设置,并在其中填写目标 URL。

将用户设备重定向到其他服务器以实现客户端内容提取:

可以使用“客户端内容提取 URL 重写规则”设置(第二代 Flash 重定向功能)重定向尝试获取 Flash 内容的操作。配置此功能时,需要提供两个 URL 模式。用户设备尝试从与第一种模式(URL 匹配模式)相匹配的 Web 站点提取内容时,将重定向到由第二种模式(重写的 URL 格式)所指定的 Web 站点。

可以使用此设置作为内容交付网络的补充。一些交付 Flash 内容的 Web 站点使用内容交付网络重定向,使用户能够从包含相同内容的最近一组服务器获得内容。使用“Flash 重定向客户端内容提取”时,将从用户设备请求 Flash 内容。Flash 内容所在的 Web 页面的其余部分由服务器提出请求。如果内容交付网络正在使用中,服务器请求将重定向到距离最近的服务器。用户设备请求传送到相同的位置。此位置可能不是最接近用户设备的位置。在加载 Web 页面和播放 Flash 内容之间可能存在明显的延迟,具体取决于距离。

  1. 从“设置”列表中,选择“客户端内容提取的 URL 重写规则”,然后选择“策略设置”。
  2. 选择未配置、已启用或已禁用。默认设置为“未配置”。“已禁用”将导致忽略在下一步中配置的任何 URL 重写规则。
  3. 如果启用该设置,请选择“显示”。使用 Perl 正则表达式语法在值名称框中键入 URL 匹配模式,并在值框中键入重写的 URL 格式。

Flash 重定向最低版本检查

警告

注册表编辑不当会导致严重问题,可能需要重新安装操作系统。Citrix 无法保证因注册表编辑器使用不当导致出现的问题能够得以解决。使用注册表编辑器需自担风险。在编辑注册表之前,请务必进行备份。

可以添加注册表设置,以指定使用适用于 Windows 的 Citrix Workspace 应用程序或适用于 Linux 的 Citrix Workspace 应用程序访问 VDA 的客户端设备进行 Flash 重定向所需的最低版本。此安全功能确保不会使用过时的 Flash 版本。

ServerFlashPlayerVersionMinimum 是一个字符串值,指定 ICA 服务器 (VDA) 上所需 Flash Player 的最低版本。

ClientFlashPlayerVersionMinimum 是一个字符串值,指定 ICA 客户端(Citrix Workspace 应用程序)上所需 Flash Player 的最低版本。

这些版本文本字符串可以采用“10”、“10.2”或“10.2.140”格式指定。仅比较主版本号、次要版本号和内部版本号。修订版本号将被忽略。例如,对于指定为“10”并且仅指定了主版本号的版本字符串,次要版本号和内部版本号假定为零。

FlashPlayerVersionComparisonMask 是一个 DWORD 值,设置为零时,将禁止比较 ICA 客户端上的 Flash Player 与 ICA 服务器上的 Flash Player 的版本。比较掩码具有其他值,但由于任何非零掩码的意思可能会发生变化,因此请勿使用。我们建议您仅为所需的客户端将比较掩码设置为零。我们建议您不要在客户端诊断设置下设置比较掩码。如果未指定比较掩码,Flash 重定向将要求 ICA 客户端上的 Flash Player 版本高于或等于 ICA 服务器上的 Flash Player 版本。此功能仅比较 Flash Player 的主要版本号来实现此要求。

要使重定向发生,除了使用比较掩码进行检查,还必须成功完成客户端和服务器最低版本检查。

子项 ClientID0x51 指定适用于 Linux 的 Citrix Workspace 应用程序。子项 ClientID0x1 指定适用于 Windows 的 Citrix Workspace 应用程序。此子项的命名方式是在文本字符串“ClientID”后面附加十六进制客户端产品 ID(无任何前导零)。

32 位 VDA 注册表配置示例:

[HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\HdxMediaStreamForFlash\Server\PseudoServer] 客户端诊断设置

“ClientFlashPlayerVersionMinimum”=”13.0” ICA 客户端所需的最低版本 “ServerFlashPlayerVersionMinimum”=”13.0” ICA 服务器所需的最低版本 [HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\HdxMediaStreamForFlash\Server\PseudoServer\ClientID0x1] Windows ICA 客户端设置

“ClientFlashPlayerVersionMinimum”=”16.0.0” 此设置指定 Windows 客户端所需的 Flash Player 的最低版本 [HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\HdxMediaStreamForFlash\Server\PseudoServer\ClientID0x51] Linux ICA 客户端设置

“FlashPlayerVersionComparisonMask”=dword:00000000 此设置为 linux 客户端禁用版本比较检查(检查以确定客户端上的 Flash Player 版本高于服务器上的版本)”ClientFlashPlayerVersionMinimum”=”11.2.0” 此设置指定 Linux 客户端的 Flash Player 的最低版本。

64 位 VDA 注册表配置示例: [ HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\HdxMediaStreamForFlash\Server\PseudoServer]

“ClientFlashPlayerVersionMinimum”=”13.0” “ServerFlashPlayerVersionMinimum”=”13.0”[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\HdxMediaStreamForFlash\Server\PseudoServer\ClientID0x1]

“ClientFlashPlayerVersionMinimum”=”16.0.0”[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\HdxMediaStreamForFlash\Server\PseudoServer\ClientID0x51]

“FlashPlayerVersionComparisonMask”=dword:00000000 “ClientFlashPlayerVersionMinimum”=”11.2.0”