This is an interesting error that was a little difficult to resolve. Here are some troubleshooting tips:
- Make sure you are publishing to the root. For example, don't publish to http://servername/sites/, but to http://servername/.
- Make sure you are not trying to publish to a Form Base Authentication Site. If you are using Form Based Authentication, then you probably have client integration disabled.
- Make sure that you have a site at the root. When you create a publish site, this should happen, but if it doesn’t, you can do the following:
- Go to your Central Administration
- Then navigate to your Application Management
- Select Create Site Collection
- Select your Web Application
Next to the Specify Web Site Address, take out the managed path (i.e. change “/sites/” to “/”). If you don’t see the “/” root option, then your site is created and this isn’t your problem.
Select a team site and click create.
The error that we finally found was because this particular farm was slated to be a public facing web host. Therefore, it had a URL scan (urlscan.ini) enabled on the web-front ends. In this case under the [AllowVerbs] section of the URLSCAN, the OPTIONS and PUT were missing. By simply adding those two variables and rebooting the server, this resolved the problem.
The OPTIONS verb is a very simple verb that just asks the server to enumerate the other verbs its capable of, like GET, PUT, POST, etc. InfoPath uses this request to find out if the URL has SharePoint installed or not. That's why blocking this verb causes an error in InfoPath. Allowing OPTIONS through URLScan should have no security implications at all, since it is a general information request only.