我想在包含一个站点的IIS中创建一个Web应用程序,然后有一个子目录,一个虚拟目录或另一个Web应用程序,包含一个.NET MVC应用程序,并根据需要配置路由。
由于我的MVC应用程序相当简单,我只需要一个控制器,所以我希望URLs如下:
将映射到我的应用程序的Home控制器。这似乎应该足够简单实现,但实际上设置它似乎导致错误,如:
HTTP Error 403.14 - Forbidden
The Web server is configured to not list the contents of this directory.
如果有人对这类问题有任何经验,我们将非常感谢您的指导!
答案 0 :(得分:1)
听起来你没有将文件夹设置为运行正确版本的asp.net的应用程序。如何做到这一点取决于IIS的版本,是否可以访问IIS管理器等......
答案 1 :(得分:0)
检查一些细节
查看iis上的框架注册,有时需要注册(再次)
键入cd C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Type
aspnet_regiis.exe -ir
记得以管理员身份运行cmd
答案 2 :(得分:0)
我们遇到了同样的问题。该应用程序在开发机器上运行良好。它作为开发服务器上的默认应用程序正常工作。将应用程序移动到IIS服务器上的另一个站点,我们得到403错误。我们检查了权限 - 一切都很好。
我们在_BaseLayout.cshtml中添加了以下内容:
<script>
var SitePath = '@Url.Content("~")';
</script>
js和每个锚点href中的每个调用都有SitePath前缀。
这使代码有效。