我一直在這個小時,仍然沒有弄清楚我做錯了什麼。我創建了一個MVC4 Intranet站點,現在我準備將它部署到我們的Web服務器上的IIS。我設置了一個名爲Portal的站點,並從Visual Studio中使用文件系統方法執行了1次單擊發布。這些文件成功複製到我的網站。在IIS中,我將身份驗證更改爲Windows並禁用了匿名身份驗證。我甚至進入了我的應用程序池,並更改了Load User Profile = true(不確定是否需要這樣做)。然後,我在*:88上點擊瀏覽Portal,並且我收到Internet Explorer無法顯示網頁。我檢查了我的模塊,我看到UrlRoutingModule-4.0被管理和繼承。我必須忽略一個明顯的設置,因爲這是我的第一個網站。任何幫助表示讚賞。謝謝。MVC4內聯網站點IIS 7,無法顯示網頁
physical path = c:\inetpub\wwwroot\Portal
Site name and Application Pool = Portal (.Net 4 and Pipeline mode: integrated)
type = http
Host name = Portal
Port = 88 (80 was already used and did not work)
IP Address = *
UPDATE:Webconfig(我有自定義角色)和Routconfig
<system.web>
<roleManager enabled="true" defaultProvider="DbRoleProvider">
<providers>
<clear />
<add name="DbRoleProvider"
applicationName="Portal"
type="Portal.WebUI.Infrastructure.DbRoleProvider"
connectionStringName="PortalEntities" />
</providers>
</roleManager>
<compilation debug="true" targetFramework="4.0" />
<authentication mode="Windows" />
<authorization>
<deny users="?" />
</authorization>
<pages>
<namespaces>
<add namespace="System.Web.Helpers" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Optimization" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages" />
</namespaces>
</pages>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<modules runAllManagedModulesForAllRequests="true" />
<handlers>
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers></system.webServer>
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "RequestInfo", action = "Index", id = UrlParameter.Optional }
);
}
App Pool配置的用戶是什麼?該用戶是否可以訪問代碼上傳到的本地文件路徑? – CtrlDot
我有傳遞身份驗證設置,並將池設置爲ApplicationPoolIdentity –
域用戶是否有權訪問?你可以在你請求你的站點時顯示你的路由config/web.config(相關認證部分)和http輸出(即:是否有任何重定向發生在後臺?)。 – CtrlDot