gpt4 book ai didi

asp.net - 从服务器删除文件: Access to the path is denied

转载 作者:行者123 更新时间:2023-12-02 17:12:26 25 4
gpt4 key购买 nike

我用我的代码隐藏调用这个函数:
DeleteFile(Server.MapPath("/") + "sitemap_index.xml")

Public Shared Function DeleteFile(ByVal filename As String) As Boolean
'deletes file from server
Dim bResult As Boolean = False
Try
If File.Exists(filename) Then
'delete file
File.Delete(filename)
bResult = True
Else
bResult = True
End If
Catch ex As Exception

End Try
Return bResult
End Function

然后我收到错误:访问路径“E:\zz\wwwroot\sitemap_index.xml”被拒绝。

在我自己的其他网站上,这种逻辑效果很好,但在当前网站上却不然。我检查了 Windows Server 2008 R2 Standard 上的安全设置。

在此处查看我在 Windows 服务器上的 wwwroot 文件夹中的设置:

SYSTEM: Full Control
NETWORK SERVICE: Read + Write + Read & Execute + List folder contents
IIS_IUSRS: Read + Write

正如我读过的其他帖子所建议的,我尝试添加其他用户组,但我的服务器上没有 ASPNET 服务/组。

以管理员身份登录(表单例份验证)时,我可以单击按钮来重新创建 sitemap_index.xml 和 sitemaps.xml
用户应该能够删除图像并将其添加到 wwwroot\images\uploads 文件夹

我应该向哪个组授予什么权限才能允许上述操作成为可能且安全?

最佳答案

检查应用程序池用户的访问权限。

找到您的站点正在使用的应用程序池,右键单击它并选择 Advanced Settings...Identity 旁边列出了池正在使用的用户的名称。 .

请注意,如果身份显示“ApplicationPoolIdentity”,则应检查用户 IIS AppPool\<Name of the app pool here> 的访问权限Info about ApplicationPoolIdentity

<小时/>

看起来像Modify权限为required to delete files 。尝试授予 NetworkService Modify权限。

关于asp.net - 从服务器删除文件: Access to the path is denied,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11253215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com