Recently, I discovered a strange thing with SharePoint 2010: anonymous access never had any search results while authenticated user had.

Here is the situation – you must have Search Application Service and a search center already available:

  • Create web application with the following settings (other don’t matters):
    • Authentication: classic mode
    • Port: 80
    • Host header: set with internal URL (such as intranet.sharepoint.contoso.local)
    • Authentication provider: NTLM
    • Anonymous access: No
  • Create a root site collection and add some content (doesn’t matter the template used)
  • Extend the new web application with the following settings:
    • Port: 80
    • Host header: set with public URL (such as intranet.contoso.com)
    • Authentication provider: NTLM
    • Anonymous access: Yes
    • Zone: Internet
  • Allow anonymous access to all the web site (from the Site Settings)
  • Launch a full crawl from the Search Administration
  • Then connect to the web site using internal URL and do a search which should provide results >> You have results
  • Do the same using the public URL >> You have no results; sign in and re do the search, you have now results

Interesting  no?

The solution is to allow anonymous access when creating the web application.

I have not yet identified where the issue is coming from.