部署在IIS6上的MVC3站点在20分钟后停止工作,404未找到

部署在IIS6上的MVC3站点在20分钟后停止工作,404未找到

问题描述:

我会尽量缩短这个时间,随时索取更多详细信息。部署在IIS6上的MVC3站点在20分钟后停止工作,404未找到

使用MV3剃须刀创建了移动版网站,并使用无延伸网址将其部署到IIS6网络服务器。由于.NET4安装在服务器上,因此服务器上没有特殊的配置可以使扩展名的URL工作。当我尝试访问该网站的网址为:http://site/m/时,我收到一个404 Not Found错误。

我做些什么来产生这个问题:

  1. 右键单击在VS2010项目,并发布到本地文件系统。
  2. ZIP的所有文件,并传送到生产服务器+解压有
  3. 右键单击制作的网站,并添加一个虚拟目录的新应用程序
  4. 创建所有默认设置
  5. 换上新的应用程序池该应用程序池中的新虚拟目录/应用程序
  6. 尝试访问浏览器中的URL;收到404 Not Found

这让我为难的事情是,如果我替换为第1步“文件 - >新建MVC3项目”,然后发布到本地文件系统一切正常:

  1. 测试 - 项目显示在与我用http://site/mvctest/
  2. 我不需要使用任何扩展名的浏览器
  3. 它不会停止20分钟后工作(见下段)

现在的(甚至)怪异的一部分:

如果现在移动“M”应用到刚刚为“mvctest”应用程序创建的应用程序池;它也可以工作。但是只有20分钟(或者我为“空闲后关机工作进程”设置的任何值)。

任何想法?

编辑:如果我将通配符映射添加到/m/虚拟目录,它可以工作,但是这应该也会影响性能。

它听起来像你的第一个场景处理程序未设置为处理mvc请求。需要将IIS 6集成或映射到MVC的扩展。 将应用程序池设置为在集成管道模式下运行。然后会发生什么?这应该工作。由于工作进程重置,还请检查事件日志以获取快速失败保护。

+0

如何将IIS6应用程序池设置为集成管道模式?我认为这是一个IIS7功能?在事件日志中找不到任何东西。 – Espo 2011-06-14 12:00:54

+0

啊..对不起。是的,iis 6总是'classic'(按照iis 7的定义),因此你需要为你的应用程序设置通配符处理程序。 – 2011-06-14 18:29:25

+0

至于你对性能的问题 - 肯定 - 性能可能会受到影响,但你需要确定这是否有问题。许多网站都是这样运行的,没有性能问题。测试你的应用。尝试的一个选择是删除任何资源文件夹(脚本,图像等)的映射 – 2011-06-14 18:42:43