1

我最近在本地测试服务器和实时 Web 服务器上都安装了 blogengine.net 应用程序。它们都是带有 IIS6 的 Windows Server 2003。该应用程序在我的本地测试服务器上运行良好,但它在实时服务器上部分运行。当我尝试访问设置部分中的仪表板时,浏览器不加载页面,而是尝试下载页面。当我点击主题(另一个cshtml页面)时,我会收到很多以@using BlogEngine.Core.Packaging @{ Page.Title = Resources.labels.themes;.....等开头的奇怪文本

我一直在谷歌搜索,但大多数答案似乎都集中在 IIS7 上,而那些似乎适用于 IIS6 的答案似乎并不适用,因为他们提到了检查丢失的 DLL(事实并非如此,因为 bin 文件夹包含完全相同文件作为工作服务器中的文件)。

我尝试过的事情:

1)重新安装博客引擎

2) 安装 MVC 3

3) 在网站属性的 HTTP 标头选项卡下的“.cshtml”扩展名中添加一个 mime 类型“text/html”(在 IIS6 中)

4)为网站添加专用的应用程序池

我发现的一些建议建议我应该将应用程序池设置为使用 .Net 4,但我不知道如何在 IIS6 中进行设置(与 IIS7.5 不同),我在网站属性中设置了 asp.net 设置到 4。

任何帮助或指示将不胜感激。

谢谢!

4

1 回答 1

2

好的。现在看来问题已经解决了。为了其他有同样问题的人的利益,这里是如何做到的:

1) 在 IIS 管理器中,转到网站 > 属性 > 主目录 > 配置

2) 为 .cshtml 和 .cshtm 添加两个应用程序扩展名,将两者设置为:

可执行文件 = c:\windows\microsoft.net\framework\v4.0.30319\aspnet_isapi.dll

限制为 = GET、HEAD、POST、DEBUG

请注意,在这样做之后,我仍然遇到浏览器尝试下载文件而不是加载页面的问题。这是通过清除浏览器缓存(使用 Chrome)解决的。

于 2012-07-20T14:32:36.810 回答