This was an interesting one I came across recently; intermittently we would get reports of users receiving 404 errors and IIS default landing pages, as if SharePoint sites were not running/working on our Web Front End servers.
The SharePoint environment was 2x WFE, 2x Service Application and 1x SQL Server Reporting Services. The WFE servers were load balanced by a HLB. We’re using Host Named Site Collections, so have to manually configure IIS bindings on the Web Front End servers.
There were few errors that really explained what was going on – initially we thought it was a backup related issue, but I think that the backup simply exacerbated the issue rather than caused the issue.
Just prior to raising a support call with Microsoft I came aross the following blog post, which was pretty much like-for-like what we were seeing on our SharePoint 2013 farm:
The issue was pretty simple – the Request Management Service was proxying requests to other servers in the farm – noteably the Service Application and SSRS servers – where IIS is not configured for the HNSCs. On the Service Application servers we had an IIS site listening on all all IPs/host headers, HTTPS – this was for Central Admin. On the SSRS server there was no HTTPS provision – this explained the randome behaviour we were seeing:
- IIS landing page on the HTTPS-enabled Service Application servers
- 404 errors on the non-HTTPS enabled SSRS server
Running some simple PowerShell commands we were able to exclude the Service Application and SSRS servers as targets from the Request Management Service configuration – commands taken from the blog above:
$web=Get-SPWebApplication -Identity <URL of web application> $rm=Get-SPRequestManagementSettings -Identity $web $m=Get-SPRoutingMachineInfo -RequestManagementSettings $rm -Name <MachineName> Set-SPRoutingMachineInfo -Identity $m -Availability Unavailable
No need to perform an IIS reset, the commands take effect immediately. Alongside resolving the IIS default page/404 errors, we also noticed that the HNSCs loaded significantly faster after making this change.
More info on the Request Management Service here: http://technet.microsoft.com/en-us/library/jj712708.aspx