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 重定向。我们尚未决定在哪些版本的 XenApp 和 XenDesktop 中排除 Flash 重定向代码,但我们建议您尽可能切换到 HTML5 视频重定向。HTML5 视频重定向非常适合控制多媒体内容。例如,公司通信视频、培训视频或第三方托管内容时。
有关 HTML5 视频重定向的详细信息,请参阅HTML5 多媒体重定向。
Flash 重定向功能可将大部分 Adobe Flash 内容(包括动画、视频和应用程序)处理工作卸载到连接至 LAN 和 WAN 的用户 Windows 和 32 位 Linux x86 设备,从而降低服务器和网络的负载。这样将提供更高的可扩展性,同时确保获得高清晰度用户体验。配置 Flash 重定向时,必须同时进行服务器端设置和客户端设置。
小心:
使用 Flash 重定向功能时会在用户设备和服务器组件之间进行大量交互。只应在用户设备和服务器之间无需安全分隔的环境中使用此功能。此外,用户设备应配置为只在可信服务器上使用此功能。由于 Flash 重定向功能要求在用户设备上安装 Adobe Flash Player,因此,只有在 Flash Player 自身处于安全状态时启用此功能。
Flash 重定向功能在客户端和服务器上均受支持。如果客户端支持第二代 Flash 重定向功能,Flash 内容将在客户端上呈现。Flash 重定向功能包括支持用户通过 WAN 进行连接、智能回退和 URL 兼容性列表;请参阅下文了解详细信息。
Flash重定向使用服务器上的窗户事件日志记录来记录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小电影),并在服务器上呈现这些实例,而不是通过重定向在用户设备上呈现。此优化功能不会在加载 Web 页面或 Flash 应用程序时导致任何中断或故障。默认情况下,启用 Flash 智能回退。要重定向所有 Flash 内容实例,使其呈现在用户设备上,请禁用此策略设置。请注意,有些 Flash 内容可能无法成功重定向。
- Flash 服务器端内容提取 URL 列表允许您指定一些 Web 站点,这些站点的 Flash 内容应该下载到服务器,然后传输到用户设备以进行呈现。(默认情况下,Flash 重定向功能会将 Flash 内容直接下载到具有客户端提取功能的用户设备。)此设置与用户设备上的启用服务器端内容提取设置结合使用(并且前者要求使用后者),主要用于 Intranet 站点和内部 Flash 应用程序。请参阅下文了解详细信息。此设置还可以用于大多数 Internet 站点,可以在用户设备不直接访问 Internet 时(例如,由 XenApp 或 XenDesktop 服务器提供连接时)使用。 注意:服务器端内容提取功能不支持使用实时消息传送协议 (RTMP) 的 Flash 应用程序;此时应改为使用服务器端呈现功能,该功能支持 HTTP 和 HTTPS。
- Flash URL 兼容性列表 - 指定在何处呈现来自所列 Web 站点的 Flash 内容:在用户设备上、服务器上还是被阻止。
- Flash 背景色列表 - 可以将 Web 页面与 Flash 实例的颜色相匹配,从而在使用 Flash 重定向时改进 Web 页面的外观。
在用户设备上配置 Flash 重定向
在用户设备上安装 Citrix Receiver 和 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 重定向功能:
- 从“设置”列表中,选择在用户设备上启用 HDX MediaStream Flash 重定向,然后单击策略设置。
- 选择未配置、启用(默认设置)或禁用。
- 如果选择启用,请从使用 HDX MediaStream Flash 重定向列表中选择一个选项:
要在具有所需配置时使用最新 Flash 重定向功能,并在没有此配置时还原为在服务器端呈现,请选择仅使用第二代选项。
要始终使用 Flash 重定向,请选择始终。将在用户设备上播放 Flash 内容。
要始终不使用 Flash 重定向,请选择从不。将在服务器上播放 Flash 内容。
要使用智能网络检测功能评估客户端网络的安全级别,以确定何时使用 Flash 重定向功能,请选择询问(默认设置)。如果无法确定网络安全性,系统会询问用户是否使用 Flash 重定向。如果无法确定网络安全级别,系统会提示用户选择是否使用 Flash 重定向。
下图显示了 Flash 重定向针对各种网络类型的处理方式。
用户可以从 Citrix Receiver - Desktop Viewer 首选项对话框的 Flash 选项卡中选择优化或不优化,来覆盖智能网络检测。根据用户设备上的 Flash 重定向配置,可选择的选项将有所不同,如下图所示。
在客户端与服务器端之间同步 HTTP Cookie:
默认情况下,客户端与服务器端之间的 HTTP Cookie 同步已禁用。启用同步功能,以从服务器下载 HTTP Cookie;这些 HTTP Cookie 用于客户端内容提取,并可供包含 Flash 内容的站点在需要时使用。
注意:
客户端 Cookie 在同步期间不会被替换;即使之后同步策略被禁用,它们也将保持可用。
- 从“设置”列表中,选择“启用客户端 HTTP cookie 与服务器端的同步”,然后单击“策略设置”。
- 选择“未配置”、“已启用”或“已禁用”(默认设置)。
启用服务器端内容提取:
默认情况下,Flash 重定向功能会将 Adobe Flash 内容直接下载到用于播放此内容的用户设备。启用服务器端内容提取会使 Flash 内容下载到服务器上,然后再发送到用户设备。除非有覆盖策略(例如通过 Flash URL 兼容性列表策略设置阻止某个站点),否则 Flash 内容将在用户设备上播放。
当用户设备通过 NetScaler Gateway 连接到内部站点以及用户设备没有直接访问 Internet 的权限时,会频繁使用服务器端内容提取。
注意:
服务器端内容提取功能不支持使用实时消息传送协议 (RTMP) 的 Flash 应用程序。而应对此类站点使用服务器端呈现功能。
Flash 重定向功能支持用于服务器端内容提取功能的三个启用选项。其中两个选项包含在用户设备上缓存服务器端内容的功能,这样一来,由于重复使用的内容已经存储在用户设备上用于呈现,因而提高了性能。该缓存的内容与用户设备上缓存的其他 HTTP 内容存储在不同的位置。
如果任一启用选项被选中并且客户端 .swf 文件提取操作失败,将自动开始回退到服务器端内容提取。
要启用服务器端内容提取功能,必须同时在客户端设备和服务器上进行设置。
- 从“设置”列表中,选择启用服务器端内容提取,然后单击策略设置。
选择“未配置”、“已启用”或“已禁用”(默认设置)。如果启用此设置,请从服务器端内容提取状态列表中选择一个选项:
选项 说明 已禁用 禁用服务器端内容提取,以覆盖服务器上的 Flash 服务器端内容提取 URL 列表设置。服务器端内容提取回退也已禁用。 已启用 为 Flash 服务器端内容提取 URL 列表中所标识的 Web 页面和 Flash 应用程序启用服务器端内容提取。可以使用服务器端内容提取回退功能,但是不会缓存 Flash 内容。 已启用(永久缓存) 为 Flash 服务器端内容提取 URL 列表中所标识的 Web 页面和 Flash 应用程序启用服务器端内容提取。可以使用服务器端内容提取回退。通过服务器端提取而获得的内容缓存在用户设备上,并在会话间存储。 已启用(临时缓存) 为 Flash 服务器端内容提取 URL 列表中所标识的 Web 页面和 Flash 应用程序启用服务器端内容提取。可以使用服务器端内容提取回退。通过服务器端提取而获得的内容缓存在用户设备上,并在会话结束时删除。 - 在服务器上,启用 Flash 服务器端内容提取 URL 列表策略设置,并在其中填写目标 URL。
将用户设备重定向到其他服务器以实现客户端内容提取:
可以使用客户端内容提取 URL 重写规则设置(第二代 Flash 重定向功能)将获取 Flash 内容的尝试重定向。配置此功能时,需要提供两个 URL 模式;如果用户设备尝试从与第一种模式(URL 匹配模式)相匹配的 Web 站点提取内容,会被重定向到由第二种模式(重写的 URL 格式)所指定的 Web 站点。
可以使用此设置作为内容交付网络 (CDN) 的补充。一些交付 Flash 内容的 Web 站点使用 CDN 重定向,使用户能够从包含相同内容的最近一组服务器获得内容。使用 Flash 重定向客户端内容提取功能时,将从用户设备请求 Flash 内容,而 Flash 内容所在的其余 Web 页面则由服务器请求。如果在使用 CDN,服务器请求会重定向到最近的服务器,用户设备请求也会到达同一位置。这可能并不是距离用户设备最近的位置;在加载 Web 页面和播放 Flash 内容之间可能存在明显的延迟,具体取决于距离。
- 从“设置”列表中,选择客户端内容提取的 URL 重写规则,然后单击策略设置。
- 选择未配置、已启用或已禁用。未配置是默认设置;选择已禁用将忽略在下一步中配置的任何 URL 重写规则。
- 如果启用设置,请单击显示。使用 Perl 正则表达式语法在值名称框中键入 URL 匹配模式,并在值框中键入重写的 URL 格式。
Flash 重定向最低版本检查
警告
注册表编辑不当会导致严重问题,可能需要重新安装操作系统。Citrix 无法保证因注册表编辑器使用不当导致出现的问题能够得以解决。使用注册表编辑器需自担风险。在编辑注册表之前,请务必进行备份。
可以添加注册表设置,以指定使用 Citrix Receiver for Windows 或 Citrix Receiver for Linux 访问 VDA 的客户端设备进行 Flash 重定向所需的最低版本。此安全功能确保不会使用过时的 Flash 版本。
ServerFlashPlayerVersionMinimum是一个字符串值,指定 ICA 服务器 (VDA) 上所需 Flash Player 的最低版本。
ClientFlashPlayerVersionMinimum是一个字符串值,指定 ICA 客户端 (Citrix Receiver) 上所需的 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 指定 Citrix Receiver for Linux。子项 ClientID0x1 指定 Citrix Receiver for Windows。此子项的命名方式是在字符串“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”