In my latest posts I’ve shown you how to secure and customize your CItrix X1 StoreFront solution.
Now let’s take a look at how you can remove single point of failure by configuring a multiple-server deployment. Did you know it doesn’t work as expected?
I’m deploying all my servers with my Automation Framework, let’s take a look at the Task Sequence.
So the Task Sequence will install Citrix X1 StoreFront unattended and also Import and Bind the SSL Certificate because the Task Sequence variable is set to True in CustomSettings.ini. Read more about it in my post Securing Citrix X1 StoreFront with Powershell.
1 2 3 4 5 6 7 8 9 10 |
[Settings] Priority=ByVM, UUID, Default Properties=XenAppRole, PVSTemplate, WindowsUpdate, ImportCertificate, ConfigureSite, JoinSite, vCenterCertificate WindowsSource=%DeployRoot%\Operating Systems\Windows Server 2012 R2\sources\sxs WindowsUpdate=False ImportCertificate=True vCenterCertificate=False ConfigureSite=True JoinSite=True |
Let’s start the Citrix X1 StoreFront console for the first time on SF-02.
To get High Availability you need to click on Join existing server group. This will ask for the Authorizing server and code.
To get this Code you need to head over to your Primary X1 StoreFront server, in my case SF-01.
Select Server Group – Add Server. This will give you the code.
Head back to your Secondary X1 StoreFront Server and type in the information above.
Now let’s test the new site on SF-02.
Hey, Wait a Minute Citrix! Where’s my customization that I made according to the post Citrix Netscaler Gateway and X1 StoreFront Customization?
So the built in Synchronization takes care of my Application Subscriptions, Trusted Domains and Feature App Groups, but why not Customize Website Appearance?
Citrix wants us to leverage Netscaler Gateway for Load Balancing, but what help does that do if StoreFront can’t replicate my Customizations!
Well, fix it yourself. Run the following script to replicate the Customization:
1 2 3 4 5 6 |
$PriSF="sf-01.ctxlab.local" $SecSF="sf-02.ctxlab.local" $StoreLocation="StoreWeb" copy-item \\$PriSF\c$\inetpub\wwwroot\Citrix\$StoreLocation\custom\* \\$SecSF\c$\inetpub\wwwroot\Citrix\$StoreLocation\Custom\ -Recurse copy-item \\$PriSF\c$\inetpub\wwwroot\Citrix\$StoreLocation\receiver\images\2x\ReceiverFullScreenBackground_46E559C0E6B5A27B.jpg \\$SecSF\c$\inetpub\wwwroot\Citrix\$StoreLocation\receiver\images\2x\ReceiverFullScreenBackground_46E559C0E6B5A27B.jpg -Recurse |
Let’s check Customize Website Appearance once more.
I’ve recently found the class for the Login Page Logo and added that to my \StoreWeb\custom\style.css file which at the moment look like this:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
/* Edit this file to customize the User Interface by overriding the existing CSS Styles. * You can use browser development tools to identify the CSS classes you want to customize. */ /* When using the StoreFront Authentication SDK to return custom forms, a class "customform" is added to each form. * The following commented CSS rule illustrates how to modify the width of form field labels for custom forms. */ /* .customform .field { width: 400px; } */ /* The following section of the file is reserved for use by StoreFront. */ /* CITRIX DISCLAIMER: START OF MANAGED SECTION. PLEASE DO NOT EDIT ANY STYLE IN THIS SECTION */ .theme-header-bgcolor{ background-color:#464647; } .is-hdpi .logo-container{ background-image: url('Receiver_Logo_2x.png'); background-size: 110px 39px; } .logo-container{ background-image: url('Receiver_Logo_1x.png'); background-size: 110px 39px; } /* CITRIX DISCLAIMER: END OF MANAGED SECTION. */ /* You may add custom styles below this line. */ .with-logo.logon-spacer{ background-image: url('xenappblog_Logo.png'); } |
I tried a couple of hours to replace the background image in the Body, but it didn’t work out to good. Probably because the body is calling another CSS file. If anyone have solved this issue, please share in the comment below.
I want to specify location and e.g. Custom_BG.jpg in Style.css instead of using the ridiculous long name ReceiverFullScreenBackground_46E559C0E6B5A27B.jpg.
After you have made any changes such as customization, you need to replicate them to the other servers. Your manual script is one way, but it is much easier to hit the “Propagate Changes” button in the admin console (under server group).
To be honest I’m not entirely sure whether this button actually works for X1 customiztions in the Tech Preview (but it certainly propagates any changes made to the previous UI).
It will certainly be fully working by GA!
Rich.
Hi Richard, thanks for stopping by. That’s actually the problem, the “Propagate Changes” which also runs when you add a new StoreFront server to a Server Group doesn’t work for Customize WebSite Appearance. For Manage Future Apps Groups, Subscribe Applications etc everything is working. So yes, I think it’s a bug in TP that should be fixed in GA. X1 StoreFront is awesome, but add Custom Login Page Logo and Login Page Background Branding THEN it will ROCK! Talk soon at the CTP meeting in Orlando.