02 Jun 2012

How to redirect certain URL requests to XenApp published browser with “URLRedirect” version 1.0

Starting point

I recently had a customer asking me how to configure client to server content redirection on XenApp 6.5. After listening to his requirements I noticed that plain client to server redirection will not fit all the reqs. He requested that if users click on URLs or links within documents or applications, the request should be forwarded to a published browser on a XenApp farm. A filter based on URLs should be available to decide whether a URL request will be served by the published browser rather than with the local browser. The solution should work with both current Citrix Receiver types (Native and Enterprise PNagent).

The Solution

I created a small solution called “URLRedirect” which does exactly that. The solution consists of the following components:

  • A reg file which creates a new custom application named CTX.HTTP type in HKEY_CLASSES_ROOT
  • two reg files which set the default program for opening http/https requests to CTX.HTTP application
  • A powershell script which contains the main intelligence to launch the URL either via local or published browser
  • A text file to include / exclude URLs

 

Installation / Configuration

As this is version 1.0, there are still some things to do manually :-), I promise that I’ll create an installer / uninstaller  some day

  • Download URLRedirect HERE
  • Extract the zip to a folder on the client of your choice (if you choose C:\Scripts\URLRedirect there is not much customization for you)
  • Edit the URLRedirect.ps1 Powershell script to fit your needs (static constants)
  • Unblock the Powershell script and set the PS execution policy to “RemoteSigned”, as a more secure alternative you can also sign the Script.
  • Edit the HKCR_CTX.HTTP.reg file (adapt the path to the powershell script  where you extracted it)
  • Edit the urls.txt to either define which URLs should be included or excluded from being redirected (depending on what you set for $filtermode in the PS script)
  • Apply the HKCR_CTX.HTTP.reg as an administrative user
  • Apply HKCU_shell_http.reg and HKCU_shell_https.reg to all users using any profile management or scripting solution

Disclaimer

The solution has been successfully tested with Receiver 3.2 and ReveiverEnterprise 3.2 on Windows 7 together with XenApp 6.5 and Web Interface 5.4, but it may also work for lower versions. Currently it does NOT work with PNAgent together with Citrix StoreFront Services.
The solution is provided as is without any warranty or support. You use it at your own risk.

Bug Reporting

If you notice any bugs or if you have nice ideas or feature requests, tweet me @DRMIRU, or write me an email to: michael(at)miru.ch

**
**