If you're using SharePoint for any public facing websites and are integrating search and are wondering why search results are not coming up when you're not logged in to the site, you aren't alone! Try performing the following simple steps:
In your Sharepoint site, head to Site Settings --> Site Administration --> Search and Offline Availability, and change the Indexing ASPX Page Content setting to "Always index all Webparts on this site".
Then, head to Central Administration and re-run a search crawl for the appropriate content source.
Once the content has been crawled, you should now be able to get search results when running queries as an anonymous user.
More information on the search visibility settings can be found here.