2013-05-10 54 views
0

我有一個MVC4應用程序,從Visual Studio工作正常,但是當我將其構建到本地IIS或發佈到遠程IIS(7.5都),我得到403錯誤。MVC4發佈到IIS7.0

是否有一些設置我缺少在IIS中運行MVC? (我在服務器上運行PHP Zend 2和Symphony應用程序沒有問題)

+0

所以你有IIS和Apache並行運行? – Hackerman 2013-05-10 19:45:11

+0

不,我在IIS上運行PHP應用程序(使用URL重寫'web.config'文件替換'.htaccess'文件。 – aserwin 2013-05-10 19:46:35

+0

Ok ...這是您在您的實際開發環境中的第一個.net部署嗎? – Hackerman 2013-05-10 19:48:19

回答

0

403是拒絕訪問。您的應用程序中是否具有身份驗證方案,還是應該是匿名訪問?如果您想匿名訪問,請打開IIS管理器並轉到您的網站。在IIS部分下,打開Authentication項並確保啓用匿名身份驗證。另一個要檢查的地方是在ASP.NET部分下,確保在.NET授權部分下沒有拒絕。

+0

我得到的錯誤是關於列出目錄的內容。路由似乎沒有工作,我之前在其他服務器上完成了此操作,沒有額外的設置。這臺服務器最初是爲了安裝PHP應用程序而建立的,並且也逐漸成爲了.net服務器。我的猜測是運行PHP所需的設置與.net mvc不兼容(我希望事實並非如此) - 但正如我所說的,它在VS中運行良好......它只是不會發布。 – aserwin 2013-05-10 20:00:25

+0

這是在一個沒有安裝PHP應用程序的網站上正確嗎?MVC安裝在服務器上,並且運行在網站上的應用程序池。 NET 4.0? – Dan 2013-05-10 20:02:40

+0

好吧,這是我接下來要檢查的內容。這不是我的服務器! (hehe)自從我被委託開發一個MVC應用程序後,我假定服務器已經準備好了......我該假設該死的。 – aserwin 2013-05-10 20:04:09

0

解決方案?添加此行我的web.config

<system.Webserver>

<modules runAllManagedModulesForAllRequests="true"/>

好像將被記錄的地方......或者在腳手架可能包括在內。 只是一個想法。