Rys*_*ora 9 azure kudu azure-devops
我已使用 Azure DevOps 将 .Net Core Web 应用程序部署到 Azure 应用服务。现在,当我尝试使用 Kudu 在“D:\home\site\wwwroot”中创建文件时,它说:
409 冲突:无法写入本地资源 'D:\home\site\wwwroot\anc' > 由于错误'找不到文件 'D:\home\site\wwwroot\anc'。'。
我注意到“D:\home\site\wwwroot”目录上的权限与我使用发布配置文件部署的类似 Web 应用程序中的权限不同
在有问题的应用程序上获取 Acl 结果:
PS D:\home\site\wwwroot> Get-Acl "D:\home\site\wwwroot"
Get-Acl "D:\home\site\wwwroot"
Directory: D:\home\site
Path Owner Access
---- ----- ------
wwwroot IIS APPPOOL\luncher-dev NT AUTHORITY\SYSTEM Allow FullControl...
Run Code Online (Sandbox Code Playgroud)
在其他类似应用上获取 Acl 结果:
PS D:\home\site\wwwroot> Get-Acl "D:\home\site\wwwroot"
Get-Acl "D:\home\site\wwwroot"
Directory: D:\home\site
Path Owner Access
---- ----- ------
wwwroot BUILTIN\Administrators Everyone Allow DeleteSubdirectoriesAndFiles,...
Run Code Online (Sandbox Code Playgroud)
来自 Azure DevOps 的相应发布管道
如何使 wwwroot 目录可写?
tec*_*yan 16
更改此应用设置键
WEBSITE_RUN_FROM_PACKAGE = 1 to 0
Run Code Online (Sandbox Code Playgroud)
此设置使 wwwroot 成为只读文件系统。
使用从包运行,这是严格执行的,因为 wwwroot 文件夹变为只读
当您部署为 zip 时,您无法编辑文件系统。
\n\n\n\n我根本不知道这个功能,而且该设置隐藏在 VSTS 任务中,所以我没有注意到它。您需要展开“其他部署选项”部分,然后单击“选择部署方法”复选框,默认情况下该复选框处于未选中状态。只有在这两次单击之后,您才能看到包含部署方法的下拉列表 \xe2\x80\x93 ZipDeploy 是默认的。
\n\n我需要将其更改为使用 WebDeploy,以便应用程序文件将存储为普通文件,并且应用程序可以像以前一样在文件系统中写入。
\n 归档时间: |
|
查看次数: |
5797 次 |
最近记录: |