SSRS Reports do not work within SharePoint when using Host Headers 

Tags: Reporting Services

WOW – integrating Reporting Services into SharePoint will get the blood pressure up! I just spent a morning diagnosing some aggravating errors with reporting services and I figured I'd blog about the solution. The only problem is I think everybody and their mom gets this error, but everyone has a different resolution… nevertheless, I hope this write up will help someone…

 

I was getting this error when browsing a reporting services report within a SharePoint site:

 

"An unexpected error occurred while connecting to the report server. Verify that the report server is available and configured for SharePoint integrated mode."

 

 

If I viewed the report with the report viewer web part I got this different error:

 

 

"The request failed with HTTP status 401: Unauthorized."

 

 

 

 

What's especially interesting is the report renders just fine when I was browsing the SharePoint site using the server name and port number. I only got the errors when using a host header!

 

 

FOR EXAMPLE:

 

Reports render fine when hitting the SharePoint site using this URL:

http://servername:82

 

but they don't work when using this fully qualified domain name \ FQDN (although the rest of the SharePoint content works just fine – just the reports are broke):

http://reports.contoso.com

 

My reporting services Web Service URL does not use a host header but rather just uses the server name and a port:

http://ssrsserver:8989

 

SOLUTION!

 

After 4 hours of toying with settings and reading a MILLION blog posts, I finally found one that worked. I found this KB article that discusses why you may get a 401 unauthorized error:

 

http://support.microsoft.com/default.aspx?scid=kb;en-us;896861

 

The solution involves disabling the loop back check. Follow these instructions to fix:

 

  1. Click Start, click Run, type regedit, and then click OK.
  2. In Registry Editor, locate and then click the following registry key:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

  3. Right-click Lsa, point to New, and then click DWORD Value.
  4. Type DisableLoopbackCheck, and then press ENTER.
  5. Right-click DisableLoopbackCheck, and then click Modify.
  6. In the Value data box, type 1, and then click OK.
  7. Quit Registry Editor, and then restart your computer.

 

I have to admit the theory behind this is a bit vague in my mind – but if it's not broke, don't complain J.

 

Hope that helps someone!

 

Phil

 
Posted by PSW\Administrator on 20-May-09
0  Comment  |  Trackback Url  | 0  Link to this post | Bookmark this post with:        
 
Failed to render control: Value does not fall within the expected range.

Comments

Bookmark and Share