System Requirements
- File servers with a configuration Windows Search Index
- Windows Server 2008 R2 / 2012 (R2) / 2016 / 2019 or newer
- enabled role Web Server (IIS) with the following additional features
- Windows-Authentication
- .NET Extensibility 4.6 (or higher)
- ASp.NET 4.6 (or higher)
- .NET Framework 4.7.2
The IT Search application was developed on .NET Framework 4.7.2 due to a change in a slightly earlier version that handles long paths within NTFS correctly. In Windows 2016 and earlier versions of Windows, .NET Framework 4.7.2 is not available through the Features and Roles installer respective the Server Manager, meaning you actually need to download and install the latest version of .NET Framework 4.7.2 to be able to run the IT Search web application.
Windows Search Index
This whole solution does not make much sense without DFS in place, cause users would be able to directly access the Windows Search Index if they use a mapped drive directly connected to the target file server rather then going through a single entry point for DFS names spaces.
If you wonder what DFS is and if it is right for you, take a look at this blog entry to learn more about how to set it up and what advantages DFS has.
Windows Search Index is something many people complain about. It is actually not so complicated if you set it up right and on top of it put proper monitoring on it. Both is described in various blog articles on this web site.
Installation
- install the IIS roles and features including Windows-Authentication on your target server
- install .NET Framework 4.7.2 on your target server
- download and extract the IT Search web application files to a path on the IIS server
- e.g. C:\ITSearch
- create an Active Directory user account that will run the IT Search web application
- this needs to be an Active Directory user because it will need to be able to read on the file server shares
- e.g. Domain\ITSearch
- open the Internet Information Services (IIS) Manager on your server
- go to Application Pools and create a new Application Pool
- e.g. ITSearchPool
- chose Advanced Settings from the context menu of the new Application Pool
- set the Identity property to the Active Directory user you created earlier
- save the settings and restart the Application Pool
- right click on Sites and select Add Website…
- Site name – IT Search
- Application Pool – select the ITSearchPool you just created
- Physical Path – choose the path where you extracted the downloaded files to – C:\ITSearch
- Settings like Host name etc. are to be configured to your liking.
- Please note – if you do not specify a host name and want to use the server name directly, you might need to stop the Default Web Site.
- It is to recommended that you create an DNS alias entry for the server that hosts the web site like itsearch.domain.local and set the same name as host name for the new web site.
- You can use HTTPS as well if you want too – please note that you will need a valid certificate configuration for this. Please refer to the official manuals for IIS from Microsoft to find out more about this.
- go to Application Pools and create a new Application Pool
- open a web browser and access the URL of either the server or the DNS alias that you created
- Note: if you open a browser directly on the server you might need to start the browser as administrator in order to be able to access the configuration
- please refer to the configuration section of the online manual for more information about the next steps
In theory this is it. You now need to configure the IT Search web application and make the Search Providers available to your users. Please refer to the online manual for further details.
Known issues
Authentication issues
- Popup window asking for credentials
- please try it with “localhost” – if this works you might have an issue with your security settings – common issue I came across is that your internal domain name mirrors and public domain name – you would need to create a GPO to adjust the Internet Settings and add the site to the right security zone that allows NTML authentication.
- Access denied
- check in IIS on the web server you created under authentication that Anonymous Authentication as well as Windows Authentication are enabled
- all the files from the downloaded ZIP file mike have a block on them cause they had been downloaded from the Internet. Please refer to the following Microsoft link for information on how to remove this block
- Microsoft Unblock-File
- possible PowerShell command: Get-ChildItem -Recurse | Unblock-File
- Default.aspx entry exists twice error
- open the Web.config file and search for the <add “Default.aspx”> entry mentioned and remove it