500 Server-Fehler beim hosten von WCF
Vielleicht können Sie mir helfen weil ich bin echt ratlos hier.
Ich versuche, meine host WCF-Dienst in IIS auf einer subdomain.
Starten, hier ist meine Datei-Struktur:
http://s18.postimage.org/eqmjxb00n/Serv.jpg
Innerhalb der bin sind meine .dll Vertretung meines interface und Implementierung.
Hier ist das web.config-Datei:
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="false" targetFramework="4.0" />
</system.web>
<system.serviceModel>
<services>
<service name="AuthenticatorService.Authenticator">
<endpoint address="" binding="basicHttpBinding" bindingConfiguration=""
name="AuthEndpoint" contract="AuthInterface.IAuthenticator" />
<endpoint address="" binding="mexHttpBinding" name="MetadataEndpoint"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="True"/>
<serviceDebug includeExceptionDetailInFaults="False" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</configuration>
Funktioniert es lokal aber wenn ich den upload auf den IIS-es gibt nur 500 server Fehler.
Dank!
Wenn es keinen nutzen, hier ist die Nachricht von der detaillierten Fehler-Seite:
Module ServiceModel-4.0
Notification AuthenticateRequest
Handler svc-Integrated-4.0
Error Code 0x00000000
Requested URL http://service.swiftposter.com:80/auth.svc
Logon Method Anonymous
Logon User Anonymous
Edit: ich konnte ELMAH Protokollierung und endlich eine aussagekräftige Nachricht:
System.ArgumentException: This collection already contains an address with scheme http. There can be at most one address per scheme in this collection. If your service is being hosted in IIS you can fix the problem by setting 'system.serviceModel/serviceHostingEnvironment/multipleSiteBindingsEnabled' to true or specifying 'system.serviceModel/serviceHostingEnvironment/baseAddressPrefixFilters'. Parameter name: item
Werde ich zu Beginn der recherche zu diesem Fehler, aber ich habe hier gepostet, nur falls jemand weiß, was falsch ist.
Stack Trace:
System.ServiceModel.ServiceActivationException: The service '/auth.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. If your service is being hosted in IIS you can fix the problem by setting 'system.serviceModel/serviceHostingEnvironment/multipleSiteBindingsEnabled' to true or specifying 'system.serviceModel/serviceHostingEnvironment/baseAddressPrefixFilters'.
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. If your service is being hosted in IIS you can fix the problem by setting 'system.serviceModel/serviceHostingEnvironment/multipleSiteBindingsEnabled' to true or specifying 'system.serviceModel/serviceHostingEnvironment/baseAddressPrefixFilters'.
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.Activation.ServiceHostFactory.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.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult result)
at System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult result)
at System.ServiceModel.Activation.ServiceHttpModule.EndProcessRequest(IAsyncResult ar)
at System.Web.HttpApplication.AsyncEventExecutionStep.OnAsyncEventCompletion(IAsyncResult ar)
Sorry, passiert nichts, ich meinte es nicht laufen. Es hält nur geben mir 500 server Fehler.
ist die .net-version von der app-pool definiert die Rechte, Dateien/Datenbanken, ausgestellt mit den richtigen Anmeldeinformationen, falls zutreffend. mehrere Probleme können die das problem. Hast du mehr Infos?
Es ist festgelegt, 4.0 und alle Dateien zugegriffen werden kann
In diesem alten thread hat sich als hilfreich erwiesen mir große Zeit. Meine Website hat ein Erbe asp.net app zusammen mit einigen WCF - Dienste " - diese WCF-Dienste, die ausgeführt wurden, sowie für mehrere Jahre, aber aufgehört zu arbeiten alle von einer plötzlichen, mid-Tag gestern. Nach ein paar Stunden versuchen Sachen vergeblich, kam in TheGateKeeper Antwort oben, angewendet werden, und dass es mein Problem. Im Falle dass, dies hilft jemand - ich bin nicht 100% sicher, die eigentliche Ursache, aber das ist meine beste Vermutung, wie diese schreiben: - meine WCF-Dienste, die möglicherweise erforderlich, die
multipleSiteBindingsEnabled
eingestellt werden
InformationsquelleAutor TheGateKeeper | 2012-03-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich den Fehler behoben, indem diese auf meiner Website.config.
Ich denke, dies geschah, weil ich hatte 2 Bindungen, die beide verwendet http. Vielleicht kann jemand anders erarbeiten.
InformationsquelleAutor TheGateKeeper
500-Fehler identifiziert jede Art von server-Fehler... probieren Sie Zugriff auf den Dienst von localhost (Standard-Einstellungen für IIS-Fehler zeigt nur lokal).
Versuchen auch zum Bearbeiten der IIS-Einstellungen auf "Senden Fehler im browser"
oder
In Internet Information Services (IIS) - Manager - > Ihre Web - > Fehler-Seiten > Eigenschaften, und wählen Sie Detail Fehler
In dieser Weise können Sie sehen, die wirklichen Fehler ausgelöst, die von Ihrem service.
Überprüfen Sie auch, dass in Ihrer Anwendung pool, die richtige framework-version ausgewählt ist
InformationsquelleAutor AndreaCi
Ihre service-Adresse und service-Metadaten - Adresse sollten nicht identisch sein. Es sollte wie:
http://msdn.microsoft.com/en-us/library/ms733766.aspx
Nicht sicher, aber kann man kontrollieren, in diesem blog? Ähnliche Fehler wie deine. [net.micheltol.nl/post/...
InformationsquelleAutor Min Min