Windows 11下AWS部署WordPress遇脚本权限问题求助
解决CodeDeploy部署WordPress时脚本无法执行的问题
方法1:用Git Bash设置脚本权限并打包(推荐)
Windows环境下可通过Git Bash模拟Linux环境配置脚本权限,步骤如下:
- 安装Git for Windows后打开Git Bash终端
- 切换到WordPress项目根目录
- 给目标脚本添加执行权限:
chmod +x scripts/install_dependencies.sh - 使用Git Bash的zip命令打包项目,确保保留权限信息:
该打包方式会将文件的Linux权限写入zip包,CodeDeploy解压后脚本即可正常执行。zip -r WordPressApp.zip .
方法2:通过appspec.yml先设置权限再执行脚本
修改项目根目录的appspec.yml,在BeforeInstall阶段增加权限设置步骤:
- 在
scripts目录下新建set_permissions.sh脚本,内容如下:#!/bin/bash chmod +x ./scripts/install_dependencies.sh - 修改
appspec.yml的hooks部分,优先执行权限设置脚本:
CodeDeploy会先为安装脚本赋予执行权限,再执行后续安装逻辑。hooks: BeforeInstall: - location: scripts/set_permissions.sh timeout: 300 runas: root - location: scripts/install_dependencies.sh timeout: 300 runas: root
额外检查点
- 确认zip包内
scripts/install_dependencies.sh路径正确,避免多余层级(直接打包项目根目录内容,不要嵌套外层文件夹) - 检查脚本换行符:Windows默认CRLF换行可能导致Linux无法识别,建议在编辑器(如VS Code)中将脚本换行符改为LF(右下角状态栏可切换)
内容的提问来源于stack exchange,提问作者kukis
相关产品推荐
相关产品推荐

