Windows 7和IIS中的文件pipe理问题

我们有一个网站,用于在任何版本的IIS上运行Windows 2003服务器; 我认为IIS6。 该网站已被移到一个新的服务器,这是一个与IIS7的Windows 7服务器。 由于此举,我们已经在我们的网站上得到错误:

Access to the path 'someFile.ext' is denied. 

网站尝试删除文件时(该网站具有上载function并删除旧文件)会发生错误。 有谁知道是什么原因造成的?

额外的信息:

  • 当我远程桌面到服务器,并尝试删除文件,我得到一个Windows提示,说我需要提供pipe理员权限这样做。
  • 部分文件可能是由帐户被禁用的用户创build的
  • 问题早于此更改,但该网站最近更新为使用asp.net v4的应用程序池
  • 如果我去的网站上传一个文件,然后我可以删除该特定的文件没有问题。
  • 服务器是vmware机器。
  • 当我试图上传一个与无法删除的文件名相同的文件时,我得到了一个401错误。

如果有人遇到过这个问题,或者知道一个方法,我们可以追查问题的原因,我将不胜感激。

这几乎肯定是文件系统的权限问题,特别是如果您不使用Active Directorypipe理该服务器。 当您从旧服务器复制文件时,创build它们的用户(其SID)在技术上仍然是它们的所有者。 检查文件上的NTFS权限,并确保您用于IIS的用户/帐户具有删除权限。 要进行debugging(完成后删除此权限!),请给这些文件“完全控制”,并确保它们由该服务器上的本地pipe理员帐户或该服务器上的SYSTEM拥有。

UAC提示也是由没有正确分配权限造成的。 它提示你暂时拥有一个给定文件的所有权,并更改其权限,以便删除它。

我的猜测是你可能robocopied文件和手动设置权限。 有时候这个工作大部分时间会导致奇怪的问题。 我build议使用webdeploy并重新迁移网站,而不是复制文件。

另一个可能的原因是具有兼容性问题的isapifilter。

编辑:

如果您select不修复网站,您可以debugging使用procmon来监视栏访问权限并应用适当的权限可能是什么权限。