我已经发布了一个MVC 3网站到我的godaddy最终托管帐户。我在VS 2010中使用了FTP发布实用程序。除了一件事外,一切都可以正常工作。它将文件夹路径信息添加到URL中。MVC3发布到子文件夹,是将文件夹路径添加到URL
在我的本地机器上运行它时,示例网址为:
localhost:36370/About/History。
但是我发布我的网站后,我得到了一个额外的/_sites/website/目录添加到我的所有链接。
我要的是: www.mysite.com/About/History
我最终什么得到的是: www.mysite.com/_sites/website/About/History
这是我用来显示链接的代码:
@ Html.ActionLink(“关于我们”,“历史”,“关于”)
另一个有趣的事情是,如果我手动输入我想要什么,页面加载正常。但由于某些原因,我的所有html.actionlinks和url.content都会将其他_sites/website/目录添加到URL中。
我的主机使用IIS7.0,ASP.NET运行时版本:4.0。保存所有文件的目录“网站”被设置为应用程序根目录。
我已经遍寻搜索,还没有找到解决方案。我在this thread看到另一个类似的问题,但没有答案。
这是我的第一个问题,所以我不知道我是否应该以某种方式“碰撞”另一个问题或者问我自己的问题。
此外,这是我目前使用的路线信息取自Global.asax.cs文件。
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
谢谢你救了我的时间和挫折小时! – Paul