上不起作用cshtml頁面不能僅在子域的子目錄中工作。我們有一個主域,其中cshtml在'X'子目錄文件夾中工作,但我們有一個子域,其中根目錄是主域的子目錄,cshtml在那裏不起作用。在IIS上,主域和子域都有自己的應用程序池。主域的'X'子目錄已被轉換爲應用程序,並且cshtml頁面正在工作。我們嘗試完成相同的過程,但出現以下錯誤:擴展名'.cshtml'在子目錄
未提供此類型的頁面。 說明:您所請求的頁面類型未被投放,因爲它已被明確禁止。擴展名'.cshtml'可能不正確。請查看下面的網址,並確保它拼寫正確。
請求的URL:/test/test.cshtml
這是一個簡單的測試文件,它的工作原理在主域子目錄,但不是在子域副目錄。我認爲這是阻止的父域,「它已被明確禁止。」
在處理程序映射上,分機處於活動狀態。 (Windows Server 2012 R2,IIS 8.5)
服務器安裝了.NET Framework 4。此外,應用程序正在配置爲使用該版本的.NET Framework的應用程序池中運行。
/家庭/ MAIN_DOMAIN/X_subdirectory(工作CSHTML)
/家庭/ MAIN_DOMAIN/sub_domain /子目錄(不工作CSHTML)
你有什麼想法?
下面的代碼提供給我一個內部錯誤:
<system.webServer>
<security>
<requestFiltering>
<fileExtensions>
<remove fileExtension=".cshtml" />
<add fileExtension=".cshtml" allowed="true" />
</fileExtensions>
</requestFiltering>
</security>
</system.webServer>
添加這對我的web.config不工作也沒有。
<configuration>
<appSettings>
<add key="webpages:Enabled" value="true" />
</appSettings>
</configuration>
子目錄下它的工作原理被配置爲一個Web應用程序:
在IIS管理器(WIN + R和複製%SYSTEMROOT%\ SYSTEM32 \ INETSRV \ iis.msc)
在樹目錄左邊(\網站\ MAIN_DOMAIN \ sub_directory
列表項右鍵點擊它,我選擇「轉換爲應用程序」
你是不是想通過網絡訪問原始的'.cshtml'文件?爲什麼? '。cshtml文件應該作爲ASP.NET引擎的一部分進行處理,然後將生成的內容提供給客戶端。由於您已將此標記爲MVC 4,這意味着您可以在啓動時使用應用程序中定義的路由來訪問視圖。您的請求將根據請求的路徑命中控制器,這將用於適當的視圖。 – mason 2014-10-01 16:55:21
我試過ASP.NET引擎能夠處理子目錄上的.cshtml文件的代碼。我不使用視圖。一個簡單的代碼,你在這個頁面看到:http://www.w3schools.com/aspnet/showfile_c.asp?filename=try_razor_cs_004 – nandoC 2014-10-01 20:44:53
相同的代碼工作在其他子目錄,其中該目錄已通過IIS轉換爲應用程序,但與子域不起作用 – nandoC 2014-10-01 20:48:21