2017-08-25 114 views
0

vb.netでREST WCF Webサービスを作成し、1 &に公開しました。サービスの1つに電話しようとすると、私は受信し続けます:WCF WebデプロイHTTPエラー404 - 見つかりません

HTTPエラー404 - 見つかりません。

探しているリソースが削除されているか、名前が変更されているか、一時的に利用できません。

私はwwwrootディレクトリを見て、.svcファイルとweb.configを見つけることができます。なぜそれが見つからないのか分かりません。私が作っていますコールは次のとおりです。http://localhost/Service1.svc/GetTimesheetDetails/1/1/11256/2017-8-9

<OperationContract()> 
 
    <WebInvoke(Method:="GET", ResponseFormat:=WebMessageFormat.Json, BodyStyle:=WebMessageBodyStyle.Wrapped, UriTemplate:="GetTimesheetDetails/{userid}/{organisationid}/{jobid}/{sdate}")> 
 
    Function GetTimesheetDetails(ByVal userid As String, ByVal organisationid As String, ByVal jobid As String, ByVal sdate As String) As List(Of JobEngineerTime)

私は、Visual Studio上でそれらを実行しているこれらの呼び出しをテストして、それが正常に動作し、残念ながら私はそれが1 & 1を介して実行するために取得することができませんサーバ。

これは私のweb.configファイルです:

<?xml version="1.0"?> 
 
<configuration> 
 

 
    <appSettings> 
 
    <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" /> 
 
    </appSettings> 
 
    <system.web> 
 
    <!--Disabled custom errors to allow display of detailed errors.--> 
 
    <!--<customErrors mode="Off"/>--> 
 
    <customErrors mode="RemoteOnly" defaultRedirect="~/Errors/500.htm"> 
 
     <error statusCode="404" redirect="~/Errors/404.htm"/> 
 
    </customErrors> 
 
    <compilation debug="true" strict="false" explicit="true" targetFramework="4.5" /> 
 
    <httpRuntime targetFramework="4.5"/> 
 
    </system.web> 
 
    <system.serviceModel> 
 
    <behaviors> 
 
     <endpointBehaviors> 
 
     <behavior name="webBehaviour"> 
 
      <webHttp /> 
 
     </behavior> 
 
     </endpointBehaviors> 
 
     <serviceBehaviors> 
 
     <behavior name="metadataBehavior"> 
 
      <serviceMetadata httpGetEnabled="true" /> 
 
      <serviceDebug includeExceptionDetailInFaults="true" /> 
 
     </behavior> 
 
     <behavior name=""> 
 
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" /> 
 
      <serviceDebug includeExceptionDetailInFaults="false" /> 
 
     </behavior> 
 
     </serviceBehaviors> 
 
    </behaviors> 
 
    <services> 
 
     <service behaviorConfiguration="metadataBehavior" name="WCFTimesheetWebService.Service1"> 
 
     <endpoint address="" behaviorConfiguration="webBehaviour" 
 
      binding="webHttpBinding" contract="WCFTimesheetWebService.IService1" /> 
 
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
 
     </service> 
 
     <service behaviorConfiguration="metadataBehavior" name="WCFTimesheetWebService.Service2"> 
 
     <endpoint address="" behaviorConfiguration="webBehaviour" 
 
      binding="webHttpBinding" contract="WCFTimesheetWebService.IService2" /> 
 
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
 
     </service> 
 
     <service behaviorConfiguration="metadataBehavior" name="WCFTimesheetWebService.Service3"> 
 
     <endpoint address="" behaviorConfiguration="webBehaviour" 
 
      binding="webHttpBinding" contract="WCFTimesheetWebService.IService3" /> 
 
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
 
     </service> 
 
    </services> 
 
    <protocolMapping> 
 
     <add binding="basicHttpsBinding" scheme="https" /> 
 
    </protocolMapping> 
 
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" /> 
 
    </system.serviceModel> 
 
    <system.webServer> 
 
    <!-- Allowing Cross-Origin Resource Sharing (CORS) - The httpProtocol settings allow web services to be called from external domains using JavaScript--> 
 
    <httpProtocol> 
 
     <customHeaders> 
 
     <add name="Access-Control-Allow-Origin" value="*" /> 
 
     <add name="Access-Control-Allow-Headers" value="Content-Type, Accept" /> 
 
     </customHeaders> 
 
    </httpProtocol> 
 
    <modules runAllManagedModulesForAllRequests="true"/> 
 
    <httpErrors errorMode="Detailed" /> 
 
    <validation validateIntegratedModeConfiguration="false"/> 
 
    <!-- 
 
     To browse web app root directory during debugging, set the value below to true. 
 
     Set to false before deployment to avoid disclosing web app folder information. 
 
     --> 
 
    <directoryBrowse enabled="true"/> 
 
    </system.webServer> 
 

 
</configuration>

+0

これは、ホスティング環境に問題がある可能性があります。私は1&1と話すか、サポートフォーラムをチェックすることをお勧めします。 – Tim

答えて

0

マッピングのカップルは、IIS、 "ハンドラマッピング" に欠落していました。問題を解決するためには、「ハンドラマッピング」内の「親に戻す」をクリックして、欠落しているマッピングを復元して作業を開始するだけでした。

関連する問題