2017-09-09 62 views
0

我編寫了一個Web API程序它在本地windows服務器上運行,並在其他本地windows服務器上進行了測試。但是,當我上傳的Plesk主機,它不工作,我得到這個錯誤:如何在plesk上運行web api程序

404 - File or directory not found.

我只設定一個具體的項目在web.config中

<httpProtocol> 
    <customHeaders> 
    <add name="Access-Control-Allow-Origin" value="*" /> 
    </customHeaders> 
</httpProtocol> 

我的樣本API地址爲Here

我應該設置一個特定的設置嗎?

回答

0

我應該在的ASP.NET Web API啓用跨域請求2. 我讀這個主題Here

我應該安裝

Install-Package Microsoft.AspNet.WebApi.Cors

是打開文件後App_Start/WebApiConfig.cs 。將下面的代碼添加到WebApiConfig.Register方法。

using System.Web.Http; 
namespace WebService 
{ 
    public static class WebApiConfig 
    { 
     public static void Register(HttpConfiguration config) 
     { 
      // New code ((((((important this (config.EnableCors) item)))))) 
      config.EnableCors(); 

      config.Routes.MapHttpRoute(
       name: "DefaultApi", 
       routeTemplate: "api/{controller}/{id}", 
       defaults: new { id = RouteParameter.Optional } 
      ); 
     } 
    } 
} 

,明年以後,[EnableCors]屬性添加到的TestController類:此項目後

using System.Net.Http; 
    using System.Web.Http; 
//((((((important this (using System.Web.Http.Cors) item)))))) 
    using System.Web.Http.Cors; 

    namespace WebService.Controllers 
    { 
//((((((important this (EnableCors) item)))))) 
     [EnableCors(origins: "http://mywebclient.azurewebsites.net", headers: "*", methods: "*")] 
     public class TestController : ApiController 
     { 
      // Controller methods not shown... 
     } 
    } 

你應該檢查虛擬目錄,你應該在潰敗文件夾或子域上傳。

相關問題