我一直在寻找解决这个错误的技巧(google,stackoverflow.com等),而且每一件都无法解决。 我需要通过asp.net应用程序动态创建一个.aspx文件。
我已尝试修复它:
1)在文件夹的属性 - >安全性,我添加了IUSR_TONY和IIS_IUSRS,并允许它们对文件夹进行完全控制。只是为了检查一下是否有帮助。不,它不会。
2)在IIS管理器中,我尝试更改应用程序的池默认值标识(基于that)我检查了所有选项,但没有成功
我不知道该怎么做才能修复它。有什么想法吗?
答案 0 :(得分:2)
IIS 6的说明
您需要使用IIS管理器更改“主目录”权限。
在网站上打开属性。选择“主目录”选项卡。选中“写入”复选框以启用写入权限。
如果您这样做,我建议只在特定目录而不是整个网站上启用写入。更改单个目录的权限与上述相同,除了不为整个网站选择“属性”,而是选择要创建文件的目录的“属性”。
IIS 7的说明
Edit Permissions
Security
标签Edit...
IIS_IUSRS
并添加,确保Allow
复选框已标记为Write
。我知道这听起来很像你在1)问题中所做的,但我猜你可能只是通过Windows资源管理器而不是IIS管理器来编辑权限。如果上述步骤仍不适合您,请告诉我您看到的错误。
我测试了使用example from aspalliance.com将文件写入磁盘,当我向输出目录授予IIS_IUSRS
写入权限并且在删除写入权限时停止工作时,它运行良好。
答案 1 :(得分:1)
请说明您的操作系统和IIS版本。
您需要授予对IIS中运行应用程序池的帐户的访问权限。它通常是NT Authority \ Network Service,因此请尝试授予该帐户完全控制权。
但是,如果您在网站上使用Windows集成安全性(并且具有impersonation = true),则必须被授予访问权限的用户才是请求该页面的用户。
最后,我真的想阻止你制作一个动态创建aspx文件的博客系统。它根本不是这样做的方式。