【问题标题】:ASP.NET MVC Routing: Works in Dev Env but not always in Prod EnvASP.NET MVC 路由:在开发环境中工作,但并不总是在生产环境中工作
【发布时间】:2012-08-16 22:58:12
【问题描述】:

我的开发环境文件夹结构与我的产品环境不同。我的产品环境中 url 的开头看起来像:/dirs/xxx/ctrlr/action/id 我的开发环境 url 没有 /dirs/xxx 节点;它们看起来像:/ctrlr/action/id

当我发布我的项目并在 prod 环境中运行时,有时我的代码会正确映射额外的 prod url 节点,有时却没有,我得到 404。

我正在检查我的项目中 url 映射正确发生的部分,并与没有正确发生的部分进行比较,但到目前为止我还没有找到解决方案。如果您能提供帮助,将不胜感激。如果我错过了已经回答了这个问题的 StackOverflow 博客,我深表歉意;我已经用谷歌搜索了它。

【问题讨论】:

    标签: asp.net-mvc deployment asp.net-mvc-routing


    【解决方案1】:

    您是否尝试过设置您的开发环境以匹配您的生产环境?

    右键单击您的 MVC 项目,然后编辑属性,然后选择 web。

    在此屏幕截图中,我使用的是 IIS Express - 将您的 URL 目录更改为 /dirs/xxxx/。如果您使用的是 cassini,则可以将虚拟路径更改为 /dirs/xxx/

    这应该会暴露您遇到的路由问题。通常对我来说,它与 javascript 或其他一些未通过路由引擎的函数有关,我没有注意到生成错误的 url。

    【讨论】:

    • 首先感谢您的回复。我使用 cassini,尝试添加虚拟路径,重新构建并运行项目,但在取出虚拟路径之前无法访问我的页面。我真的认为问题出在您回复的最后一句话中,即“......它与 javascript 或其他一些未通过路由引擎的函数有关,我没有注意到生成错误的 url。”,但是我还没找到呢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-17
    • 2017-07-15
    • 1970-01-01
    • 2020-09-05
    • 1970-01-01
    • 2016-07-16
    相关资源
    最近更新 更多