You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure WordPress应用服务wwwroot目录权限无法修改求助

解决Azure App Service中WordPress文件权限无法修改的问题

问题本质

Azure App Service部署的WordPress,其wwwroot目录挂载的是Azure Files网络存储,平台会强制控制文件/目录的权限继承逻辑,常规SSH会话中执行的chmod命令仅在当前会话临时生效,退出或重启后会被平台重置回777,所以你执行的命令看不到持久效果。

有效解决方案

方法1:通过Azure门户设置启动命令

  1. 登录Azure门户,找到你的WordPress App Service实例
  2. 进入「配置」→「常规设置」→「启动命令」
  3. 输入以下命令(适配Apache运行时,若为Nginx可替换最后启动命令):
    find /home/site/wwwroot -type d -exec chmod 775 {} \; && find /home/site/wwwroot -type f -exec chmod 644 {} \; && apache2-foreground
    
  4. 保存配置后,重启App Service,权限会在每次启动时自动应用

方法2:使用自定义启动脚本

  1. 通过App Service的SSH终端或FTP,在/home/site/wwwroot目录下创建startup.sh文件,内容如下:
    #!/bin/bash
    # 设置目录权限为775
    find /home/site/wwwroot -type d -exec chmod 775 {} \;
    # 设置文件权限为644
    find /home/site/wwwroot -type f -exec chmod 644 {} \;
    # 启动Web服务器(继承默认启动命令)
    exec "$@"
    
  2. 给脚本添加执行权限:chmod +x /home/site/wwwroot/startup.sh(此操作仅临时生效,但不影响脚本执行)
  3. 回到Azure门户的「配置」→「常规设置」,将启动命令设置为:./startup.sh
  4. 重启App Service即可

注意事项

  • 每次通过部署中心(GitHub、Azure DevOps等)重新部署代码后,权限会被重置,上述两种方法会在每次启动时自动重新设置权限,无需手动操作
  • 若WordPress的wp-content/uploads等需要写入的目录出现权限问题,可单独在启动命令中追加chmod 777 /home/site/wwwroot/wp-content/uploads(仅必要时使用)

内容的提问来源于stack exchange,提问作者Qiuzman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 06:05:00