我有一个名为razor ASP.Net代码的网站,扩展名为.cshtml。我使用WebMatrix编写了网站,当我在web martix的“ LocalHost ”上运行时,网站运行正常。链接和我的所有代码都可以工作,但是一旦我尝试从IIS服务器运行网站,页面链接就不再正常工作了。当我点击链接时,它会返回404错误页面。如果我输入.cshtml扩展名,页面会正确加载,并且除了文件扩展名外,所有内容都正确。唯一可用的页面是索引页面,因为它是一个默认页面。
我检查过的每个地方都说它应该在没有扩展名的情况下作为asp.net的默认运行,或者如果它不是默认运行,那么使用url重写插件。
默认未运行,我无法使用网址重写工具。
我该怎么做才能让默认设置正常工作,或者是否有另一种方法可以让扩展程序不显示而不使用使用URL重写
PS。我知道如果我把文件放在一个带有链接名称的文件夹中并将它们重命名为index.cshtml这会有效,但我觉得这是一种非常反常的做法,所以我宁愿不这样做。
PPS。在任何人建议mvc的解决方案之前我明确 不使用MVC 逻辑。谢谢。
答案 0 :(得分:0)
尝试两件事:
将应用程序池设置为ASP.NET 4.0。然后重启我的IIS。
将以下密钥添加到Web.Config的<system.webServer>
部分:
<modules runAllManagedModulesForAllRequests="true" />