ASP.NET MVC - 网站本地运行正常,但部署后无法正常工作

3
我有一个ASP.NET MVC网站。http://mywebsite.com(仅作为示例)。
在我的机器上本地测试这个ASP.NET MVC网站时一切正常。当我部署到Web服务器时,如果打开http://mywebsite.com,它会转到HomeController并加载Views / Home / Index.aspx视图(非常完美)。因此,主默认页面很好。
问题是,如果我单击任何其他链接(在本地似乎都很正常工作),我会收到以下错误:
页面无法显示 您要查找的页面可能已被删除、更改了名称或暂时不可用。 请尝试以下操作: * 确保浏览器地址栏中显示的 Web 站点地址的拼写和格式正确无误。 * 如果您通过单击链接来到达此页,请联系网站管理员,以便他们了解链接格式不正确。 * 单击“后退”按钮重试另一个链接。 HTTP 错误 404 - 文件或目录未找到。 Internet 信息服务(IIS)
一些示例如下:

http:/mywebsite.com\Photos
http:/mywebsite.com\Links

这肯定有控制器和视图设置(否则在本地无法工作)。
有人知道为什么在本地可以正常工作,但在 Web 服务器上却不行吗?
2个回答

5

你的网站是否在集成模式下运行II7?如果不是,你需要添加通配符处理程序,以便所有URL都映射到你的应用程序。请参阅Phil Haack的博客文章“在IIS 6上运行ASP.NET MVC”


如果这个答案没有表明清楚,如果你要使用iis 6部署,你也需要这样做。 - Mallioch
一定要看那篇博客文章,它会带你逐步完成使其工作的步骤。 - Lance Fisher
我正在尝试获取没有扩展名的URL,所以我首先要查看通配符注释。 - leora

0

还有一些需要注意的事项。我有一个静态网站 - 部署在IIS 7.5上。添加了一些MVC控制器来处理一些简单的服务器端应用程序,然后重新部署它。我没有复制web.config文件,因为我错误地认为服务器自动创建的那个包含了所有必要的内容。

你也必须将web.config复制上去。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接