Product Documentation

Configure

Oct 30, 2015

To enable users to access resources hosted on XenDesktop and XenApp in their browsers, you must create a StoreFront store and enable Receiver for HTML5. You must also enable WebSocket connections on NetScaler Gateway, XenApp, and XenDesktop, as required. Additionally, you can enhance the user experience by installing optional components on the machines providing the desktops and applications.

Caution: Editing the registry incorrectly can cause serious problems that may require you to reinstall your operating system. Citrix cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. Be sure to back up the registry before you edit it.

To enable direct connections to XenDesktop and XenApp

Receiver for HTML5 uses the WebSocket protocol to access virtual desktops and hosted applications. By default, WebSocket connections are prohibited on XenDesktop and XenApp. If you plan to enable users to access desktops and applications from the local network without connecting through NetScaler Gateway, WebSocket connections must be allowed on XenDesktop and XenApp.

WebSocket connections are also disabled by default on NetScaler Gateway. For remote users accessing their desktops and applications through NetScaler Gateway, you must create an HTTP profile with WebSocket connections enabled and either bind this to the NetScaler Gateway virtual server or apply the profile globally. For more information about creating HTTP profiles, see HTTP Configurations.

Important: If you are using SecureICA to encrypt communications between users' devices and your XenDesktop or XenApp servers, note that Receiver for HTML5 supports Basic encryption only.

To enable connections to XenDesktop and XenApp using Machine Creation Services

If you plan to create machines using Machine Creation Services (MCS), on the master image, create a registry entry at HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\GroupPolicy\Defaults\ICAPolicies if it is not already present and then add the following registry keys.

  • Create a registry key with a value type of REG_DWORD at HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\GroupPolicy\Defaults\ICAPolicies\AcceptWebSocketsConnections. Set the value of the new key to 1.
  • Create a registry key with a value type of REG_DWORD at HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\GroupPolicy\Defaults\ICAPolicies\WebSocketsPort. Set the value of the new key to the port you chose for WebSocket connections in the XenDesktop or XenApp policy. The default port is 8008.
  • Create a registry key with a value type of REG_SZ at HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\GroupPolicy\Defaults\ICAPolicies\WSTrustedOriginServerList. For the value of the new key, either specify a comma-separated list of trusted Receiver for Web site URLs or set the value to * to accept connections from all Receiver for Web sites.

Do not apply the XenDesktop or XenApp WebSocket policies to machines provisioned using this master image. You can check whether the WebSocket policies are applied on the master image VM using the rsop.msc tool or by running the gpresult command from a command prompt.
This workaround cannot be used with deployments delivered and managed with App Orchestration

To enable connections to XenDesktop and XenApp using Provisioning Services

If you plan to deploy provisioned (non-persistent) machines using Provisioning Services, create the machine catalog and delivery group for which you want to enable Receiver for HTML5 connections. Ensure that the WebSocket policies you configured apply to your machine catalog.

Machines must be restarted to apply the WebSocket policies. For Provisioning Services-based machines configured to use persistent write cache files and machines deployed using MCS (which have separate identity disks), the policies are persisted when the machines restart. However, for Provisioning Services-based machine catalogs configured to use temporary write cache files, these policies must be applied to the vDisk or they will not be implemented successfully on target devices.

Complete the following steps to ensure that the policies are correctly applied to the vDisk.

  1. Using the Provisioning Services console, shut down a target device that is part of the machine catalog and delivery group. Change the access type of the target device from Production to Maintenance.

    For details, see Managing Target Devices. You must use a target device that is part of the machine catalog and delivery group or the policies will not be applied.

  2. Create a new version of your vDisk and leave it with Access set to Maintenance.

    For details, see Manually Updating a vDisk Image.

  3. Start the maintenance target device, selecting the maintenance vDisk version from the boot menu. Verify that the following keys are added to the registry.

    HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\ICAPoliciesAcceptWebSocketsConnections

    HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\WebSocketsPort

    HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\WSTrustedOriginServerList

  4. Shut down the target device, change the target device access type back to Production, and promote the new vDisk version to production. Then, start the target device and restart any other target devices currently running from the existing vDisk.

    If you do not use vDisk versioning, you can apply the policies to your base vDisk image by shutting down all the target devices that use the vDisk, placing the vDisk in Private Image mode, and then starting the target device to update the image.

To configure optional components

Two optional components are available that enhance the experience for Receiver for HTML5 users by increasing integration with XenDesktop and XenApp.

  • App Switcher enables users to switch between multiple applications running in the same session. When session sharing is enabled on XenApp, which it is by default, applications opened within the same session appear in the same browser tab. App Switcher provides a taskbar running within the session that displays all the applications currently running in the session, enabling users to switch between them.
  • The Citrix PDF Universal Printer driver enables users to print documents opened with hosted applications or applications running on virtual desktops delivered by XenDesktop 7.6 and XenApp 7.6. When a user selects the Citrix PDF Printer option, the driver converts the file to PDF and transfers the PDF to the local device. The PDF is then opened in a new browser tab for viewing and printing from a locally attached printer.
  1. If you plan to enable session sharing on your XenApp deployment, download the App Switcher installer. Ensure that .NET Framework 4.0.3 is installed and enabled, then install App Switcher on each machine providing applications for Receiver for HTML5 users.

    App Switcher is configured to run automatically in the background when users establish a session.

  2. If you want to enable users to print documents opened with hosted applications or applications running on virtual desktops delivered by XenDesktop 7.6 and XenApp 7.6, complete the following steps.
    1. Download the Citrix PDF Printing Feature Pack and install the Citrix PDF Universal Printer driver on each machine providing desktops or applications for Receiver for HTML5 users. After installing the printer driver, restart the machine.
    2. In Citrix Studio, select the Policy node in the left pane and either create a new policy or edit an existing policy.

      For more information about configuring XenDesktop and XenApp policies, see Citrix policies.

    3. Set the Auto-create PDF Universal Printer policy setting to Enabled.

To enable Receiver for HTML5 on StoreFront

You must enable Receiver for HTML5 on the Receiver for Web site for the StoreFront store that provides the desktops and applications you want to make available to Receiver for HTML5 users.

Important: In multiple-server StoreFront deployments, use only one server at a time to make changes to the configuration of the server group. Ensure that the Citrix StoreFront management console is not running on any of the other servers in the deployment. Once complete, propagate your configuration changes to the server group so that the other servers in the deployment are updated.
  1. If you have not already done so, deploy StoreFront and create a store aggregating the desktops and applications you want to make available to Receiver for HTML5 users.

    A Receiver for Web site is created automatically for new stores. For more information about creating StoreFront stores, see Create a store.

  2. In the Citrix StoreFront management console, select the Receiver for Web node in the left pane. From the results pane, select the site providing resources for Receiver for HTML5 users and, in the Actions pane, click Deploy Citrix Receiver.
  3. Enable Receiver for HTML5 by selecting one of the following options.
    • If want users to access desktops and applications from the site using a locally installed version of Citrix Receiver, where available, select Use Receiver for HTML5 if local install fails. Users who already have Citrix Receiver installed cannot use Receiver for HTML5 to access resources from the site. Windows and Mac OS X users without Citrix Receiver are prompted to install Citrix Receiver every time they log on to the site, but can use Receiver for HTML5 if they are unable to install Citrix Receiver.
    • If you want all users to access desktops and applications from the site through Receiver for HTML5 regardless of whether they have a locally installed version of Citrix Receiver, select Always use Receiver for HTML5.
  4. If you changed the port used when you allowed WebSocket connections on XenDesktop or XenApp, complete the following steps to change the WebSocket port for the Receiver for Web site.
    1. Use a text editor to open the web.config file for the Receiver for Web site, which is typically located in the C:\inetpub\wwwroot\Citrix\storenameWeb directory, where storename is the name specified for the store when it was created.
    2. Locate the following element in the file.
      <html5 ... preferences="" ... />
    3. Set the value of the preferences attribute to wsPort:portnumber;, where portnumber is the port that you configured in the policy.