IISconfiguration更改打破第三方应用程序

我正在使用asp.net上的第三方应用程序构build。 它在Server 2003 / IIS6上运行。 我改变了应用程序池的回收方式。 发生这种情况后,第三方应用程序停止工作。 特别是与第三方程序目录中的文件不相对应的URL返回了404错误。

(我不是那么快就如何asp.net工作。)我的意思是,如果我去像example.com/thirdparty/page.aspx的URL,当有一个page.aspx文件在第三第三方程序目录,该页面工作。 如果我去example.com/thirdparty/stylesheet6.css ,程序目录中没有stylesheet6.css文件,我得到一个404错误。

在对应用程序池进行更改后,它停止工作,但是我可能错误地更改了IISconfiguration的其他方面。 我已经把这些应用程序池的设置放回了我的想法,但这并没有解决。

这个第三方软件的公司build议卸载,重新安装和从备份恢复(基本上他们不知道为什么它被打破),但我想撤消我做了什么损害,因为这可能会更容易。

对于IISconfiguration,我可以做些什么改变会破坏这些URL?

如果您进行定期备份,则可以尝试从更改前恢复IIS元数据库文件的副本。 这里有一个货物指南是techNet。 您需要先从磁带恢复文件,然后将其放置在可以访问的位置以将其恢复到IIS。 先备份当前文件

回收设置不应该导致 – 他们可能会激活之前做出的configuration更改。

这听起来像是你缺lessASP.Net的通配符脚本映射,并且应该为通配符脚本映射切换“validation文件存在”设置。 应用程序可能附带说明,作为其首次设置的一部分,但可以在应用程序级别以及网站上重新定义这些设置。

uSlackrbuild议从早期的备份恢复元数据库是好的(不要忘记configuration历史),否则你可以比较metabase.xml和旧的,特别是关注脚本和相关设置,在每个级别有兴趣。

(我正在回答我自己的问题,因为遵循uSlackr和TristanK给出的答案,我能够找出configuration设置更改如何造成如此大的破坏。)

uSlackr指出的文章是关键。 我没有意识到每次更改configuration时都会执行自动备份。 不幸的是,尽pipe我已经做了所有的调整,但是事情正在进行的自动备份已经被覆盖。 但是,我可以使用手动还原的说明从备份还原(无需还原不相关文件的负载)。

我敢肯定,我做错了,是改变网站根目录的设置,然后当它询问是否应该覆盖下面的所有内容时说yes。 我认为它会做的只是改变这个设置(例如超时),但实际上它是用空白覆盖底层的脚本映射。 这些脚本包括通配符处理程序,这就是为什么这些URL打破了。 经验教训:在适当的层面改变事物,当configuration改变破坏事物时从备份中恢复。