2012-01-20 41 views
1

背景:服務一個網站項目和一個web服務項目關閉相同的IIS和相同的端口(80)?

我有由,我想分割成一個Web服務項目和一個網站項目網站+ REST Web服務的Visual Studio解決方案。

目前,Web服務在應用程序啓動通過App_Code\global.asax.cs拉開序幕,用下面的代碼:

public class Global : System.Web.HttpApplication 
{ 
    void Application_Start(object sender, EventArgs e) 
    { 
     // Code that runs on application startup 
     RouteTable.Routes.Add(new ServiceRoute("api/", new WebServiceHostFactory(), typeof(myWebInterfaceSvc))); 
    } 
    // more code here 
} 

我想我需要它分裂從上面開始...

關注:

現在,我關心的是,如果沒有共同的HTTP處理程序及以上,即額外的路線,一旦我把它們作爲兩個單獨的項目,他們將兩個單獨的IIS網站/應用程序,以便它們將在兩個不同的端口上運行我還是想既要到80端口

HTTP(S)迴應://www.site.com - >網站項目

HTTP(S)://www.site.com/ api - > web服務

假設我成功地將網站和web服務分開,我將如何爲上述設置IIS?

+1

爲什麼你不在IIS上創建一個子虛擬目錄並在該子目錄中託管web服務? – sos00

+0

犯錯......不確定!可能是因爲我今天就像一個殭屍,正在夢想着不存在的問題:)?我明天會重新考慮這個... – DeepSpace101

+0

你能更有幫助嗎?你的意思是你試過這個解決方案,或者你的意思是非常明顯,所以我甚至不想去想它? – sos00

回答

2

我最終將主網站設置爲IIS中的根/主站點,然後將該服務添加爲虛擬子目錄。

+0

僅供參考,請參閱http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be-removed-from-posts/ –

+1

Got it!謝謝! – DeepSpace101

+0

@ DeepSpace101您是否自動執行此操作?我發現New-WebVirtualDirectory是創建該目錄的powershell命令。但是我實際上在/ api下有兩個獨立的Web服務。如何讓路由工作? –

相關問題