Sitecore 9.0 was a huge change to developers on how to work with Sitecore. While many of the core tenets of working within the platform remained the same, a large amount of the infrastructure was overhauled. Because of these changes, the installation process changed along with it. No longer could developers expect a fully enabled site using SIM, they were introduced to the power of the Sitecore Installation Framework (SIF) and PowerShell. One of the annoyances that came with this shift though was that the SIF scripts in the installation guide did not provide insight into how to cleanly uninstall a site once the script was used. In this tutorial, I quickly point out the various steps that you need to go through in order to manually remove a Sitecore 9.0 XP0 local installation from your computer based on the default settings of the SIF Script and configuration files.
Sitecore Versions:
- Sitecore 9.0 XP0
Tutorial:
Step 1: Removing Services
The first step you need to do is to remove a couple of services that get installed during the installation process. Since these are Windows Services, I recommend using the Non-Sucking Service Manager (NSSM). NSSM is a useful console utility that can easily be used to install and uninstall Windows Services from a computer without requiring to modify the registry manually. In order to use NSSM though, we need to know which services we want to remove. In this case, we will be removing the following services:
- <SiteName.xconnect>-MarketingAutomationService
- <SiteName.xconnect>-IndexWorker
Note: <SiteName.xconnect>
would be the name of the installed instance’s XConnect site. For example, if you installed your site with the name sc9
the XConnect site would be called sc9.xconnect
.
Step 2: SOLR Cores
After the services are removed, the next thing we need to do is to open up our SOLR server’s administrative interface. Once in the administrative interface, we need to navigate to the Core Admin
section. This section lists out all of the search cores currently running on the server.
Remove all SOLR Search Cores that have your site’s name associated with them.
Step 3: Certificates
The next piece we need to remove are the security certificates Sitecore uses to securely communicate between the main website and the xconnect site. These certificates are installed in a couple certificate stores on the computer. In order to view the certificates, we need to open the Certificates MMC console as an Administrator.
To open the MMC console, we need to go to Start > Run
and then type in mmc
and click ok. This will open a blank MMC console. In the console’s menu bar, go to File > Add/Remove Snap-in
and then add the Certificates
snap in. From here we can remove the following Certificates:
- Trusted Root Certificate Authorities > <SiteName>.xconnect
- Trusted Root Certificate Authorities > <SiteName>.xconnect_client
- Intermediate Certificate Authorities > <SiteName>.xconnect
- Intermediate Certificate Authorities > <SiteName>.xconnect_client
Once those certificates are removed, we can close out of the MMC console.
Step 4: Internet Information Services (IIS)
At this point, the manual uninstallation of a Sitecore 9 website is very similar to that of previous versions. The next step for us is to remove the websites from IIS. If you open IIS, you should see 2 websites associated with your installed instance. You will need to remove both.
- <SiteName>
- <SiteName>.xconnect
After the websites are removed, each one has an associated Application Pool that will also need to be removed from within IIS.
Step 5: File Structure
Now that the websites have been deleted, we can go into your file system in order to delete the files for the websites. By default, these files are located in the C:\inetpub\wwwroot\
directory. Inside that directory, simply delete the folders associated with the websites removed from IIS in the previous step (the folder names should match that of the former websites).
Step 6: Databases
The final step in this process to to remove the databases from your Sql Server instance. Like all other steps, the databases for your XP0 instance will all be prefixed by default with your website’s name.