Citrix ADC Gateway page loading issue with Chrome v100
There is a great problem with last major update of Chrome (and all browsers Chromium based).
With the new version 100 of Chrome and custom theme based on RfWebUI theme on Citrix ADC we get a problem after entering credentials. Page still loading apps without any error message:
After the login, no error is displayed on web console but there are a couple of lines we can check:
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="100", "Google Chrome";v="100"
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Safari/537.36
Note: if I try to reload the page I got a 404 error on web console on “getECdetails” page.
The “sec-ch-ua” headers told us some problem in user-agent recognition. The Sec-CH-UA
user agent client hint request header provides the user-agent’s branding and significant version information.
If I try to modify user-agent of my brower via dev tool there are no “sec-ch-ua” header on my connection and everything is working well. I can see my apps and my desktops.
This problem affects Chrome v100 and all browsers based on Chromium v100 like Edge or Brave.
Currenlty Firefox version is 99.0.1. I testest Firefox with v100 and it works well.
Firefox introduced a configuration to try v100. To force it you can follow this:
- open Firefox an go to about:config
- enter “agent” on search bar
- find general.useragent.forceVersion100 and switch it to “true“
The new User-Agent will be Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:100.0) Gecko/20100101 Firefox/100.0 (and it works!)
This problem could be fixed on NSV13.1 12.50nc and later versions.
Citrix says these are the workarounds:
- Switch back to default Rfwebui Theme
- Use Firefox or other browser
- Edit plugins.xml file described below
How edit plugins.xml:
- Make a copy of the plugins.xml file located in /var/netscaler/logon/themes/<customThemeName>/plugins.xml as safety measure.
- Edit the file, /var/netscaler/logon/themes/<customThemeName>/plugins.xml; find all occurrences of \\d and replace them with \d within the session <pluginAssistant> html5 and protocolHandler only.
- Save the file.
- Flush NS cache using NSCLI command “> flush cache contentgroup loginstaticobjects”
- Setting the aaa page to not be cached also can help. “set aaa parameter -enableStaticPageCaching NO”