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

如何使用已有Drupal站点备份搭建本地调试站点

Drupal 线上项目完整本地副本搭建步骤

你之前操作失败的核心原因是导入全量线上数据库后不需要走Drupal安装向导:安装向导仅用于部署全新空白Drupal站点,检测到目标库已存在Drupal相关表时就会抛出“数据库已存在”错误,这一步完全多余。
按以下步骤操作就能得到和线上完全一致的本地副本,保留所有内容类型、数据、配置:

1. 拉取线上完整代码到本地

  • 将线上服务器Drupal根目录的所有文件整体打包,下载到本地后解压到本地web运行环境(XAMPP、WAMP、Docker部署的Drupal运行环境均可)的站点目录,不要下载官方全新Drupal内核覆盖,避免版本、插件、主题和线上不一致。
  • 必须保证几个核心目录完整下载:
    • /sites/default/files/:存储所有上传的媒体文件、图片、生成的样式缓存
    • /modules/:包含所有第三方贡献模块、自定义模块
    • /themes/:包含所有第三方主题、自定义主题
    • /sites/default/:包含站点核心配置文件

2. 导出导入全量数据库

  • 线上通过mysqldump、数据库管理工具导出全量数据库,选择导出「结构+数据」,不要只导出结构;导出时可以勾选排除cache_*开头的缓存表减小备份体积,不排除也不影响正常使用。
  • 本地新建空数据库,记录好数据库名、连接用户名、密码,将导出的数据库备份完整导入到这个本地库中,导入完成后确认表数量和线上库一致。

3. 修改本地配置适配环境

  • 打开本地代码中的配置文件,默认路径为/sites/default/settings.php,Drupal8及以上版本如果使用了配置拆分模块,还要同步调整配置目录路径,修改以下参数:
    • 数据库连接配置:将host、库名、用户名、密码替换为本地数据库的对应参数
    • 站点根地址:如果配置了$base_url参数,替换为本地访问地址,比如http://localhost/my-drupal
    • 调试配置(可选,方便排错):在文件末尾添加以下配置关闭缓存、禁用前端资源聚合,提升调试效率:
      $settings['preprocess_css'] = FALSE;
      $settings['preprocess_js'] = FALSE;
      $settings['cache']['bins']['render'] = 'cache.backend.null';
      
  • 给本地/sites/default/files/目录开启读写权限,避免媒体上传、样式生成报错。

4. 访问验证与收尾

  • 确认本地web环境的伪静态规则(Apache看.htaccess、Nginx看站点conf配置)和线上一致,避免页面404。
  • 直接访问本地站点首页即可正常打开站点,不需要访问/core/install.php安装路径,用线上站点的管理员账号密码就能登录后台。
  • 登录后台后清空一次全站缓存,重置图片样式、路径缓存,避免出现图片不显示、链接自动跳转到线上地址的问题。
  • 如果线上files目录体积太大不想全量下载,可以在本地安装Stage File Proxy模块,配置线上站点地址后,本地缺失的媒体文件会自动从线上拉取,不用下载全量文件也能正常预览站点内容。

针对你之前报错的快速修复方案

如果你已经完成了数据库导入,不需要删库重来:只要确认/sites/default/settings.php中的数据库配置正确,不要访问安装路径,直接打开站点首页就能正常使用,不会再触发“数据库已存在”的报错。如果根目录存在安装流程生成的临时锁文件,删掉/sites/default/files下的临时安装配置文件即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 22:54:20