405 - HTTP verb used to access... Bug
Hi there, I'm not too sure if I've come across a bug or not. I was able to get an install of SiteFinity 4 CTP installed and running just fine on my machine at work. The site at work is within Default Web Site as a web app.
The work machine is Windows Vista / IIS 7
However, at home, I have installed the CTP into the root directory on my localhost. I'm running Windows Server 2008 R2 / IIS 7.5. Everything installed just great, but when I try to edit a page, all I receive are
"405 - HTTP verb used to access this page is not allowed."
or
"IIS 7.5 Detailed Error - 405.0 - Method Not Allowed" (If trying on localhost versus domain name)
I cannot edit any controls dropped in, Publish, or even Cancel.
After looking at FireBug, I see...
405 Method Not Allowed
DELETE 39337bd3-0873-457b-8d6c-1d8569274e89
localhost/.../
My initial thought was that my handlers are not configured correctly. But I checked the *.svc handler and it's set to allow All Verbs.
Anyone else have a clue or able to reproduce this.
Hi DGDev,
Thank you for posting your question.
The problem is related to the WebDavModule. It is using shared verbs and protocol with http, so it's causing these problems with put/detele verbs. The resolution is simple enough though:
Open your web.config file and add the following to the system.Webserver/modules:
<
system.webServer
>
<
validation
validateIntegratedModeConfiguration
=
"false"
/>
<
modules
>
<
remove
name
=
"WebDAVModule"
/>
We are going to implement our own WebDav module, or extend the default one because of this issue.
Sincerely yours,Thanks for the help, however, I'm now receiving a new error.
500
System.ServiceModel.ServiceActivationException
DELETE
39337bd3-0873-457b-8d6c-1d8569274e89
localhost/.../
I'll try and find a solution for it today.
Hello DGDev,
Could you please check the Authentication Settings of the Sitefinity 4.0 website in IIS. You should have Anonymous Authentication and Forms Authentication enabled. If you have Anonymous Authentication disabled you will get this error. Also please check the Request Restrictions on the WcfHandler (for .svc) in Handler Mappings in IIS.
Greetings,
Radoslav Georgiev
the Telerik team
All authentication and response handlers seem to be set properly.
This is the event log error.
WebHost failed to process a request.
Sender Information: System.ServiceModel.ServiceHostingEnvironment+HostingManager/64081269
Exception: System.ServiceModel.ServiceActivationException: The service '/Sitefinity/Services/Pages/ZoneEditorService.svc' cannot be activated due to an exception during compilation. The exception message is: This collection already contains an address with scheme http. There can be at most one address per scheme in this collection.
Parameter name: item. ---> System.ArgumentException: This collection already contains an address with scheme http. There can be at most one address per scheme in this collection.
Parameter name: item
at System.ServiceModel.UriSchemeKeyedCollection.InsertItem(Int32 index, Uri item)
at System.Collections.Generic.SynchronizedCollection`1.Add(T item)
at System.ServiceModel.UriSchemeKeyedCollection..ctor(Uri[] addresses)
at System.ServiceModel.ServiceHost..ctor(Type serviceType, Uri[] baseAddresses)
at System.ServiceModel.Web.WebServiceHost..ctor(Type serviceType, Uri[] baseAddresses)
at Telerik.Sitefinity.Utilities.MS.ServiceModel.Web.WebServiceHost2..ctor(Type serviceType, Boolean dummy, Uri[] baseAddresses)
at Telerik.Sitefinity.Web.Services.DefaultServiceHost..ctor(Type serviceType, Uri[] baseAddresses)
at Telerik.Sitefinity.Web.Services.WcfHostFactory.CreateServiceHost(Type serviceType, Uri[] baseAddresses)
at System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(String constructorString, Uri[] baseAddresses)
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.CreateService(String normalizedVirtualPath)
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.ActivateService(String normalizedVirtualPath)
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
--- End of inner exception stack trace ---
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
at System.ServiceModel.ServiceHostingEnvironment.EnsureServiceAvailableFast(String relativeVirtualPath)
Process Name: w3wp
Process ID: 1516
I may have found the solution here:
http://stackoverflow.com/questions/561823/wcf-error-this-collection-already-contains-an-address-with-scheme-http
It seems there's problems when an IIS website is configured with multiple hostheaders. This seems to have fixed the problem completely.
Much thanks for your help! :D
Hi DGDev,
Thanks for your feedback and links provided. We are glad that everything is fine now, and will consider these questions to be documented (in form of troubleshooting or Kb articles).
Sincerely yours,