导入现有WordPress项目至DDEV时出现wp-config.php未找到错误
WordPress导入DDEV后启动时wp-config.php矛盾提示的解决办法
矛盾提示的常见成因
- 项目路径配置错误:DDEV默认在项目根目录查找wp-config.php,如果你的WordPress文件放在子目录(比如
/wp)但未在DDEV配置里指定docroot,就会出现矛盾——DDEV在根目录找不到wp-config.php,但实际子目录里的文件确实包含ddev引用。 - 文件权限问题:wp-config.php存在,但DDEV容器无读取权限,系统能检测到文件存在(识别到引用),但读取时失败,触发“未找到”错误。
- 配置缓存残留:之前的DDEV配置缓存未清理,比如改过项目结构但未重启容器,导致检测逻辑混乱。
分步解决办法
校正项目路径配置
- 检查WordPress文件所在位置,如果在子目录(比如
wp),编辑.ddev/config.yaml添加:docroot: wp - 执行
ddev restart让配置生效。
- 检查WordPress文件所在位置,如果在子目录(比如
修复wp-config.php的引用代码
- 确保wp-config.php里的ddev引入代码放在数据库配置之前,且路径正确:
if (file_exists(__DIR__ . '/wp-config-ddev.php')) { include(__DIR__ . '/wp-config-ddev.php'); } - 用
__DIR__绝对路径避免相对路径出错,保证能定位到wp-config-ddev.php。
- 确保wp-config.php里的ddev引入代码放在数据库配置之前,且路径正确:
重置DDEV缓存与容器
- 彻底停止所有DDEV容器并清理缓存:
ddev stop -a ddev poweroff ddev cleanup - 重新启动项目:
ddev start,DDEV会自动生成正确的wp-config-ddev.php并配置数据库。
- 彻底停止所有DDEV容器并清理缓存:
修复文件权限
- 在主机上执行
chmod 644 wp-config.php,确保文件权限符合容器读取要求。 - Linux/macOS用户可检查文件所属用户,执行
chown $(whoami):$(whoami) wp-config.php让当前用户拥有文件权限。
- 在主机上执行
手动配置数据库(跳过自动管理)
- 若以上方法无效,编辑
.ddev/config.yaml添加:disable_settings_management: true - 然后在wp-config.php里手动写数据库配置:
define('DB_NAME', 'db'); define('DB_USER', 'db'); define('DB_PASSWORD', 'db'); define('DB_HOST', 'db');
- 若以上方法无效,编辑
内容的提问来源于stack exchange,提问作者user21960061
相关产品推荐
相关产品推荐

