使用虚拟目录将ASP.NET MVC部署到IIS 5/6

时间:2009-07-31 09:48:58

标签: asp.net-mvc iis

我有一个asp.net MVC应用程序,我想使用虚拟目录部署到IIS 5和/或6。

我已经执行了通配符路由,但是我遇到了相对路径的问题。

想象一下,我创建了一个名为myApp的虚拟目录。

部署之后,我可以转到http://localhost/myApp并接受索引页面的欢迎。我的索引页面有一个定义为<a href="/Employees">Employees</a>.的链接点击此导航到 http://localhost/Employees会导致404错误。

我希望它导航到http://localhost/myApp/Employees,但如果我不需要将虚拟目录名编码到我的项目中,我会更喜欢它。

提前感谢您的帮助。

4 个答案:

答案 0 :(得分:4)

使用Html.ActionLink生成超链接而不是直接创建它们,我认为它会为您排序。或者,使用./Employees,它可以让你到达你想去的地方。

答案 1 :(得分:3)

使用Url.Content

<a href="<%= Url.Content("~/Employees") %>">Employees</a>

答案 2 :(得分:0)

不要使用绝对引用:而不是'/Employees',只需使用'Employees'而不使用/

答案 3 :(得分:0)

Url重写可以帮助您解决问题。我已经实现了允许在任何IIS版本上部署MVC应用程序的解决方案,即使使用虚拟主机也是如此。 http://www.codeproject.com/KB/aspnet/iis-aspnet-url-rewriting.aspx

相关问题