首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在IIS应用程序中托管MVC 4应用程序

在IIS应用程序中托管MVC 4应用程序
EN

Stack Overflow用户
提问于 2018-07-02 20:12:10
回答 1查看 186关注 0票数 0

我在IIS上部署了几个应用程序。我为每个应用程序创建了一个站点,并使用不同的端口号映射它们。最近,有人要求我使用虚拟目录,而不是使用不同的端口号来映射它们。我创建了虚拟目录并为它添加了一个路由。当我试图在本地测试应用程序时,我得到了一个403.14。在在线阅读了几个帖子之后,我对我的web.config文件做了以下更改

代码语言:javascript
运行
复制
  <modules>
      <remove name="UrlRoutingModule-4.0"/>
      <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule, 
        System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
          preCondition="" />
    </modules>

我没有得到一个有所有文件名的目录。我更新了我的路线

代码语言:javascript
运行
复制
RouteConfig.cs file to 
            routes.MapRoute(
                name: "Default",
                url: "CollegeOfBusiness/{controller}/{action}/{id}",
                defaults: 
                 new { controller = "Account", action = "Logon", id = UrlParameter.Optional},
                 namespaces: new[] { "MyCollege.Controllers" }
            );

在做了这些更改后,我不再得到400.13,但是,我没有得到登录页面。我正在得到所有文件的目录。我运行了命令"aspnet_regiis /i“,然后运行了aspnet_regiis -ir,以确保它不是注册问题。到目前为止,我还没有任何运气。我正在寻找任何信息或资源,可以帮助解决这个问题。

本地系统: Windows 7 IIS 7.5 Visual Studio 2017 Asp.net MVC 4 jQuery2.3

更新07/03/2018 @9:45

我修改了路线如下所示。我不再得到目录列表了。但是,POST和GET并不是路由到适当的控制器。第一次加载页面时的url如下所示:

代码语言:javascript
运行
复制
http://localhost/CollegeOfBusiness

我在下面添加了自定义路由。它就在默认路由之上添加。

代码语言:javascript
运行
复制
RouteConfig.cs file to 
        routes.MapRoute(
            name: "CollegeOfBusiness",
            url: "CollegeOfBusiness/{controller}/{action}/{id}",
            defaults: 
             new { controller = "Account", action = "Logon", id = UrlParameter.Optional},
             namespaces: new[] { "MyCollege.Controllers" }
        );

然后,在底部添加默认路径。

代码语言:javascript
运行
复制
RouteConfig.cs file to 
routes.MapRoute(
    name: "Default",
    url: "{controller}/{action}/{id}",
    defaults: 
     new { controller = "Account", action = "Logon", id = UrlParameter.Optional},
     namespaces: new[] { "MyCollege.Controllers" }
);

当用户单击登录按钮时,post URL如下所示:

代码语言:javascript
运行
复制
/CollegeOfBusiness/Account/Logon
EN

回答 1

Stack Overflow用户

发布于 2018-07-03 17:31:56

最后,我终于让它开始工作了。1.我删除了以下自定义路线,因为它是不需要的。

代码语言:javascript
运行
复制
RouteConfig.cs file to 
        routes.MapRoute(
            name: "CollegeOfBusiness",
            url: "{controller}/{action}/{id}",
            defaults: 
             new { controller = "Account", action = "Logon", id = UrlParameter.Optional},
             namespaces: new[] { "MyCollege.Controllers" }
        );
  1. 正如这个POST中所建议的那样,我将url添加到div中,并根据Id获取它。我还将所有js和css文件的src更改为使用@Url.Action()。
  2. 我不得不在所有的要求面前把‘/大学做生意’放在前面
  3. 我将应用程序池更改为使用服务帐户。这个帐户没有更新数据库的权限,所以我也修正了这个问题。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51143133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档