Installing Sitecore Horizon 9.3 in a custom location

As some you might be aware of Horizon is the next-generation editor in Sitecore Experience Platform. Horizon includes the following features:

  • The page editor, which you use to create and edit web pages. As you edit a page, you can see how it will appear on different devices.
  • Simulator mode, which you use to preview web pages as they will appear on different dates and on different devices.
  • Insights view, which you use to see analytics for your web pages.

Installation of Horizon is quite simple and it’s a matter of 4-5 mins to get Horizon up and running on top of your running Sitecore 9.3/10 instance.

Sitecore Horizon gets installed by default to “c:\inetpub\wwwroot\…” location, but how about if you want to install Horizon to custom location and not to the default one?, consider a case where you have you Sitecore installed into a custom location and you want to follow same for Horizon as well.

I was checking all Horizon configurations to see if there is a way around to install it to a custom location the way I did for Sitecore 9.3 and while I was checking this I found an article by Gullentops here-https://ggullentops.blogspot.com/2019/11/install-sitecore-93-non-default-path.html?m=0 where he has explained the changes that are required to make it happen.

So, basically the changes are required on three files:

Configs/sitecore-ah.json– Here we need to update AuthoringHost.Site.PhysicalPath variable to the path as required.

"AuthoringHost.Site.PhysicalPath": "[joinpath(environment('SystemDrive'), 'inetpub', 'wwwroot', variable('AuthoringHostSiteName'))]" 

Configs/sitecore-cm.json– There are two changes required here:

  1. Change the parameter Site.PhysicalPath (line #15) to SitePhysicalPath
  2. Change the parameter name in the definition of Site.PhysicalPath variable (line #46) – the variable can keep the “.” in the name
"Site.PhysicalPath": {
			"Type": "string",
			"DefaultValue": ""
		},
"Site.PhysicalPath": "[if(equal(parameter('Site.PhysicalPath'), ''), variable('Site.PhysicalPath.Default'), parameter('Site.PhysicalPath'))]",

and the last change on parameters.ps1 file:

  1. Add SitePhysicalPath = “site-cm-path” to the $sitecoreCM parameters
# Configure Sitecore
$sitecoreCM = @{
    Path                      = Join-Path $configsRoot sitecore-cm.json
    SiteName                  = $ContentManagementInstanceName
    AuthoringHostSiteName     = $authoringHostName
    WebProtocol               = $ContentManagementWebProtocol
    HorizonFeatureIntegrationPackageFolder = Join-Path $PSScriptRoot "resources"
    HorizonFeatureIntegrationPackageName = 'Horizon.FeatureIntegration 3.0.0.zip'
	SitePhysicalPath          = "D:\Deploy\sitecore930.dev.local"
}

2. In $sitecoreIS parameters section, set the AuthoringHostPhysicalPath to the path you want to set for your authoring site- in my case it was set to

D:\Deploy\authoringhost.sitecore930.dev.local

# Configure Sitecore Identity Server
$sitecoreIS = @{
    Path                       = Join-Path $configsRoot sitecore-is.json
    AuthoringHostSiteName      = $authoringHostName
    AuthoringHostPhysicalPath  = "D:\Deploy\authoringhost.sitecore930.dev.local"
    # Please fill in physical path to Sitecore IdentityServer. Example: c:\inetpub\wwwroot\horizon-IdentityServer
    SitecoreIdentityServerPhysicalPath = $SitecoreIdentityServerPhysicalPath
    SitecoreIdentityServerPoolName = $SitecoreIdentityServerPoolName
    SitecoreIdentityServerSiteName = $SitecoreIdentityServerSiteName
}

Fill in the other details as required in the file and you should be good to go.

For Sitecore Horizon version 10- we don’t need to do this hack- we just need to update $horizonPhysicalPath parameter to the location we want to install horizon and you are good, no more parameter updates.

Hope this helps.

Happy learning 🙂

Quick References:

https://ggullentops.blogspot.com/2019/11/install-sitecore-93-non-default-path.html?m=0

https://dev.sitecore.net/~/media/85B89928F6DF4297AB2DB04D1CE5EFD4.ashx

https://doc.sitecore.com/users/93/sitecore-experience-platform/en/horizon.html

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s