- 30 May 2024
- 2 Minutes to read
- Print
- DarkLight
Prerequisite for IIS Hosting
- Updated on 30 May 2024
- 2 Minutes to read
- Print
- DarkLight
This document demonstrates all the prerequisites to host the Decisions in IIS (Internet Information Services). To learn more about Installer Hosting Options, refer to the following article.
Application Initialization
The following configuration ensures the App Pool starts when the machine starts/restarts.
From the Start menu, open Server Manager.
From the Server Manager window, click Manage (upper right corner), then Add Roles and Features.
From the Add Roles and Features Wizard, click Next through each screen to navigate to the Server Roles screen.
Under Select Server Roles,
Web Server (IIS) > Web Server > Application Development > Enable Application Initialization and Web Socket Protocol.
Web Server (IIS) > Web Server > Performance > Enable Dynamic Content Compression
Click Next, then click Install to confirm installation selections.
Click Close once complete.
Enable Anonymous Authentication
When hosted in IIS, the platform requires Anonymous Authentication to be enabled and all other IIS Authentication modes disabled to function correctly. No security risks are associated with enabling Anonymous Authentication.
Open the "Internet Information Services (IIS) Manager."
From the "Features View", double-click on "Authentication."
Right-click on "Anonymous Authentication". Click on "Enable."
Application Pool Configuration
During the installation of the Decisions platform, administrators are presented with a default application pool named DecisionsApplicationPool. Should users opt not to utilize this default pool and prefer to create their own, they can manually set up an application pool in IIS. The installation process will then recognize the available application pools, allowing administrators to choose their preferred one for the installation.
Following are the recommended settings to perform on the Application Pool,
Open the "Internet Information Services (IIS) Manager."
Configure the Application Pool settings with the following, then click OK.
Name: DecisionsApplicationPool [or any CustomName]
.NET CLR Settings: No Managed Code
Managed pipeline mode: Integrated
Enable the Start application pool immediately
Right-click on the ApplicationPool and select Advanced Settings.
From the Advanced Settings window, set
Start Mode: Always Running
Application Pool Identity: LocalSystem (In case of Clustering, users must add the service account that will be used during initial installation)
Idle Time-Out (minutes): 0
Avoiding ASP.NET Core Module Failure
Ensure the Enable 32-Bit Applications setting is set to False to prevent the ASP.NET Core Module from failing to load.
Right-click on the ApplicationPool and select Recycling (or click the Actions Panel link).
Configure the Application Pool Recycling Settings by disabling Fixed Intervals Regular time intervals(in minutes). Then click Next, and Finish.
Configuring Recycling Settings at the Server Level (Multi-Tenant Specific)
When hosting a Multi-Tenant environment, each tenant gets hosted in IIS directly from the portal. This means that every tenant hosted requires a manual intervention to set the recycling time to zero.
However, to remove this manual intervention you can configure recycling settings at the server level, which will eventually set the recycling time to zero on all the hosted applications in the IIS.
The Recycling Settings can be configured at the server level in the ApplicationHost.config located in the folder C:\Windows\System32\inetsrv\config\applicationHost.config
.
<recycling>
<periodicRestart time="00:00:00"
</recycling>
Alternatively, this can be done in the IIS Manager. Refer to the steps:
Open Internet Information Services (IIS). From the Features View, open Configuration Editor.
Expand applicationPoolDefaults → recycling → periodicRestart. Set the time to
00:00:00
.Click on Apply from the right Actions panel. The changes will be saved with a notification.
Application Preload (Post Installation)
The following setting ensures that the App Pool starts when the machine starts/restarts.
To enable this:
Launch IIS Manager and locate the Connections panel (left side of the screen).
Expand the local host server's name beneath the Start Page, then expand Sites.
Click Manage Application > Advanced Settings.
Set Preload Enabled to True, then click OK.