我有一个用 ASP.NET 编写的网站,使用 Razor 语法,文件扩展名为 .cshtml。我使用 WebMatrix 编写了该网站,当我在 Web 矩阵的“LocalHost”上运行该网站时,该网站运行良好。这些链接和我的所有代码都可以工作,但是当我尝试从 IIS 服务器运行该网站时,页面链接就不再正常工作。
当我点击链接时,它返回 404 错误页面。如果我输入 .cshtml 扩展名,页面就会正确加载,除了文件扩展名之外,一切都正常。唯一仍然有效的页面是索引页面,因为它是默认页面。 我检查过的每个地方都说它应该在没有扩展名的情况下作为 ASP.NET 默认运行,或者如果它不作为默认运行则使用 URL 重写插件。
默认未运行,我无法使用 URL 重写工具。
我该怎么做才能使默认设置正常工作,或者是否有其他方法可以让扩展名不显示而不使用 URL 重写? 我知道,如果我将文件放在带有链接名称的文件夹中并将它们重命名为index.cshtml,这会起作用,但我觉得这是一种非常卑鄙的做法,所以我宁愿不这样做。
在任何人提出 MVC 解决方案之前,我明确
不使用 MVC逻辑。
<system.webServer>
部分:
<modules runAllManagedModulesForAllRequests="true" />