2013-11-29 34 views
1

背景:CSHTML下是mod_mono/mono3.2.5不渲染

我現在有(僅視圖引擎,沒有MVC)工作ASP.NET4.0 + Razor2.0 +是mod_mono +的Apache + mono3.0.4 +雲服務器提供商上的Ubuntu12.10。我發現另一家服務提供商比我目前的服務提供商更具成本效益。

的問題:

此服務器上運行的Ubuntu13.04,並能編寫單3.2.5(在Mono網站上的最新版本)。我配置它幾乎與我的其他服務器相同,並做了一個簡單的CSHTML頁面,它適用於我的MSVS2010;一個佈局簡單的頁面。我將所有內容都上傳到目錄中,當我試圖打開頁面時,服務器只會讓我下載整個cshtml文件。

我加入mod_mono.conf這些行:

<IfModule mod_mono.c> 
     MonoAutoApplication enabled 
     MonoServerPath /usr/bin/mod-mono-server4 
</IfModule> 

AddType application/x-asp-net .cshtml 

然後對我的Apache2虛擬主機的文件,我添加了這些行,讓單處理一切:

<Location /mono> 
    SetHandler mono-ctrl 
     Order deny,allow 
     allow from all 
</Location> 

我的配置是相同的到我以前正在正常工作的服務器。我知道的唯一區別是我使用的是Mono 3.2.5和Ubuntu 13.04,我也使用XSP,mod_mono和libgdiplus的主分支。我通過git拉代碼。

UPDATE

我再次檢查單的當前穩定版本,並發現它是3.2.4所以我把它重新編譯到這個版本,但問題仍然存在。

更新2013年12月10日 我能夠使用Debian 7.0重建服務器,它已經運行ASP.NET 4.0(理論上甚至4.5)。它現在可以正常執行普通的ASPX而不是CSHTML。

該頁面在MS Windows 7的IIS下正常運行,但它無法呈現,只是嘗試在mod_mono(單聲道3.2.7運行時)+ Apache2 + Debian或XSP4 + Windows 7上運行時下載頁面兩者都可以正確運行ASPX頁面。該測試網站仍然運行在運行mod_mono(單聲道3.0.4運行時)+ Apache2 + Ubuntu 12.10的舊服務器上。兩個服務器在mod_mono.conf和site(/ etc/apache2/sites-enabled/000-default)上都有相同的配置,但無法在我的新服務器上運行。

+0

您是否在Ubuntu 12.04的mod_mono.conf中具有完全相同的配置?你是如何安裝mono 3.2.5的? – knocte

+0

是的,我的舊服務器上的配置與我的新服務器相同。 我通過Git安裝它,與我在舊服務器上做的一樣。 – eSPiYa

+0

你是如何安裝mono的? 「通過混帳」並不是一個非常明確的回答這個問題 – knocte

回答

1

即使下面是已經在GAC,複製和放置文件的「bin」目錄固定的問題: System.Web.Helpers.dll System.Web.Razor.dll 的System.Web。 WebPages.dll System.Web.WebPages.Razor.dll