2013-06-04 31 views
1

我已經成功地在IIS6上使用ASP.NET MVC 4設置了一個API(我使用了Phil's tutorial)。測試時,我們將其作爲「默認網站」,因此與其他任何內容都沒有衝突。我現在被要求在一個現有網站的FOLDER中設置它(現有的網站是在ASP 1.0中的......我不能修改這個......所以我會做某種虛擬的東西?)。所以基本上,如果我們有https://www.ourcompany.com,他們希望API通過https://www.ourcompany.com/api/可用。是否可以從主網站的文件夾內運行asp.net mvc 4?

這甚至可能嗎? Phil的教程講述瞭如何設置一個虛擬應用程序,但是我沒有在IIS中選擇這個選項(如果我有這個選擇,我對IIS知之甚少,甚至不會允許我以這種方式訪問​​API)。我不想要我設置的任何東西來搞亂當前的網站,並且在教程中有幾個步驟,我會直接承認我不完全理解。

如果您對WHY感興趣,唯一的好處(除了「整潔」),以便可以使用相同的SSL證書。

回答

2

是的,這在我的工作中絕對可行,我們有一個類似的設置,IIS6,一個.NET 3.5 Web,嵌套在下面的.NET 4.0 Web。

您只需將其設置爲父網站下的虛擬目錄,將其指向您的文件夾,並確保「執行權限」下拉列表的值爲「僅腳本」或更高版本,並且正確的.NET框架在ASP.NET選項卡上選擇的版本。

您可能需要在子級web.config文件中覆蓋其他值,或者使用「位置」屬性覆蓋整個父級Web配置。

忘了提及,您可能需要爲子網站添加手動腳本映射,如果默認情況下它不起作用。 (這會將.NET 4.0腳本映射安裝到特定的Web),但再次不確定這是默認情況下是否需要。請參閱:http://msdn.microsoft.com/en-us/library/k6h9cz8h.aspx

還有一件事 - 如果您使用的是REST(或者我認爲MVC 4 web將使用的擴展少的URL映射) - 您需要添加一個「通配符」腳本映射基本上告訴IIS爲.NET 4.0框架提供沒有擴展名的請求 - See here但是,當他們引用.NET 2.0文件夾時,您顯然希望引用相同的文件,但在.NET 4.0文件夾中:)

謝謝

相關問題