IIS7 权限被拒绝 - ASP 文件写入 [英] IIS7 Permission Denied - ASP File Write
问题描述
很遗憾,我没有关于这方面的大量信息.我有一个客户将他们的站点从一个古老的系统迁移到 Windows 2008 Server 上的 IIS7.有关错误的信息如下:
Unfortunately I don't have a whole lot of information on this. I have a customer who has moved their site from an ancient system to IIS7 on Windows 2008 Server. Info about the error is below:
错误:E:wwwrootspxxxonline_data.xlsMicrosoft VBScript 运行时错误800a0046"
Error: E:wwwrootspxxxonline_data.xls Microsoft VBScript runtime error '800a0046'
权限被拒绝
/xxx/oat/exceldata.asp,第 52 行
/xxx/oat/exceldata.asp, line 52
代码:
49 response.write(server.mappath("online_data.xls"))
50
51 set fso = createobject("scripting.filesystemobject")
52 Set act = fso.CreateTextFile(server.mappath("online_data.xls"), true)
目前唯一的建议是:
授予应用程序池(DefaultAppPool/Classic AppPool)的冒充身份读写物理文件夹的权限asp页面所在的位置
grant the application pool (DefaultAppPool / Classic AppPool)’s impersonated identity read and write permission to the physical folder which the asp page reside
当我获得访问权限时会查看这个,但其他建议将不胜感激.
Will look at this when I get access, but other suggestions would be appreciated.
推荐答案
提供的答案是正确的,但我需要更多关于如何完成它的细节.为了使它变得非常容易,请按照以下步骤操作.我在我们的 Intranet 的沙盒系统上设置了一个 asp 页面计数器.
The provided answer is correct, but I needed a little more detail on how to accomplish it. To make it really easy, follow the steps below. I was setting up an asp page counter on a sandbox system in our intranet.
- 打开计算机管理.
- 深入了解 IIS 服务器管理
- 在连接"窗格中,单击应用程序池
- 在应用程序池"窗格中,右键单击 DefaultAppPool 并选择高级设置.顺便拜访过程模型部分.
- 默认情况下,Identity 属性为设置为 ApplicationPoolIdentity.这是一个内置帐户.
- 如果设置为默认值,那么您可以使用内置用户machinenameIUSR 为您的权限设置.我不得不指定机器名称,因为这是一个虚拟化服务器,YMMV.
- 如果未设置为默认值,请使用该用户名用于您的权限设置.
- 退出对话框并返回到 Windows 资源管理器,到文件夹您需要在哪里添加权限.
- 右键获取权限设置.
- 设置 machinenameIUSR 或您确定的非默认用户名在上面的步骤 6/7 中.授予根据需要授予权限.
这有助于:http://learn.iis.net/page.aspx/140/understanding-built-in-user-and-group-accounts-in-iis-7/
这篇关于IIS7 权限被拒绝 - ASP 文件写入的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!