【问题标题】:Running ASP.NET MVC application in a subdirectory, getting 404 errors在子目录中运行 ASP.NET MVC 应用程序,得到 404 错误
【发布时间】:2009-12-10 05:25:13
【问题描述】:

我有一个使用 ASP.NET MVC 的应用程序。我已将它部署到 Crystal Tech 服务器(因此,无法直接访问 IIS 控制面板)。

最初它在根目录中运行,一切正常。然后客户端决定它需要在子目录中运行。我将应用程序移到那里并且主页索引页面出现了,但是所有其他页面都尝试访问原始根目录中的控制器/操作/页面/视图。我不明白这一点,因为引用都是上下文相关的(即使用 ../controller/action 而不是 mysite.com/controller/action)。

我在这里做错了吗?我有哪些选择?

谢谢, 詹姆斯

【问题讨论】:

  • 浏览器导航栏中的url是相对于子文件夹还是相对于主根目录?您是否尝试过手动插入子文件夹/控制器/操作/id 路径?

标签: asp.net-mvc


【解决方案1】:

我会使用 UrlHelper 来生成链接。这将确保它们与应用程序路径相关。

<a href="<%= Url.Action( "action", "controller" ) %>">Link Text</a>

<img src="<%= Url.Content( "~/images/myimg.jpg" ) %>" alt="My Image" />

【讨论】:

  • 在你的javascript、css等中?
猜你喜欢
  • 2014-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-01
  • 1970-01-01
相关资源
最近更新 更多