我有一个asp.net web应用程序,将file upload到Web服务器上的特定文件夹。 本地一切工作正常,但是当我将应用程序部署到Web服务器,我开始得到错误“访问path”D:\ Attachments \ myfile.doc“被拒绝”。 我给了“IIS AppPool”用户该应用程序在该文件夹的完全权限下运行。 我甚至给了“每个人”完全的权限,但是有同样的错误。 我将该文件夹添加到Antivirus的“例外”列表中,但结果相同。 我开始怀疑,也许Windows Server 2008 R2需要一个技巧,我的上传工作。 我非常感谢你的帮助。 谢谢
我们最近将所有WebForms项目升级到了.NET 4.5,并且在使用iFrame元素加载页面时遇到了parsing器问题。 我们通过将HtmlGenericControl的iFrame转换为HtmlGenericControl来纠正这个HtmlIframe 。 当我们在本地运行我们的代码时,这已经纠正了所有的分析器错误。 当我们部署应用程序,我们得到以下错误信息: parsing器错误消息:基类包含字段“框架”,但其types(System.Web.UI.HtmlControls.HtmlIframe)与控件types(System.Web.UI.HtmlControls.HtmlGenericControl)不兼容。 当我用HtmlGenericControl部署旧的代码时,错误消失,提示即使我们安装了.NET 4.5,服务器仍然使用旧版本? 我试过删除并重新安装.NET,确保向IIS注册asp。 Windows 2008 R2与IIS 7.5和.NET 4.5
这里有一个IIS 7.5和ASP.NET的问题,我一直在研究和取得任何地方。 任何帮助将不胜感激。 我的问题是:在IIS 7.5中使用ASP.NET,IIS和/或操作系统如何在完全信任的情况下允许Web应用程序写入类似C:\dump的文件夹? 它是如何不必为应用程序池用户明确添加写访问权限(在这种情况下是ApplicationPoolIdentity )? 我知道的很多: 在IIS 7.5中,应用程序池的默认标识是ApplicationPoolIdentity 。 ApplicationPoolIdentity表示一个名为“IIS APPPOOL \ AppPoolName”的Windows用户帐户,该帐户是在创build应用程序池时创build的,其中AppPoolName是应用程序池的名称。 “IIS APPPOOL \ AppPoolName”用户默认是IIS_IUSRS组的成员。 如果在“完全信任”下运行,则Web应用程序可以写入文件系统的许多区域(不包括C:\Users , C:\Windows等文件夹)。 例如,您的应用程序将有权写入某些文件夹,如C:\dump 。 默认情况下, IIS_IUSRS组不具有对C:\dump读取或写入访问权限(至less不能通过Windows资源pipe理器中的“安全性”选项卡进行访问)。 如果您拒绝对IIS_IUSRS写入访问权限,则在尝试写入文件夹时(如预期的那样),将会收到SecurityException。 因此,考虑到所有这些,如何授予“IIS APPPOOL \ AppPoolName”用户的写权限? w3wp.exe进程以该用户身份运行,那么允许此用户写入文件夹似乎没有明确的访问权限? 请注意,我明白这可能是为了方便起见,因为如果您在“完全信任”下运行,授予用户对每个需要写入的文件夹的访问权限是一种痛苦。 如果你想限制这个访问,你总是可以在Medium Trust下运行这个应用程序。 我有兴趣了解操作系统和/或IIS允许这些写入发生的方式,即使似乎没有授予明确的文件系统访问权限。