将WordPress网站从服务器迁移至本地环境并进行域名替换,是开发、测试或备份时的常见需求,这一过程涉及数据库导出、文件传输、本地环境配置及数据库修改等多个环节,需谨慎操作以确保数据完整性和功能正常性,以下将详细拆解操作步骤及注意事项,帮助您顺利完成迁移。

迁移前的准备工作
本地环境搭建
在本地计算机上需安装Web服务器环境,推荐使用集成环境包,如XAMPP(Windows/Linux/macOS)、MAMP(macOS)或WampServer(Windows),这些工具已预装Apache、MySQL(或MariaDB)及PHP,可快速搭建本地运行环境,确保本地环境版本与服务器上的PHP、MySQL版本尽量一致,避免兼容性问题。备份源站数据
迁移前务必对原网站进行完整备份,包括:- 文件备份:通过FTP或cPanel文件管理器下载WordPress根目录下所有文件(wp-content目录尤为重要,含主题、插件及上传文件)。
- 数据库备份:在服务器phpMyAdmin中,选择对应数据库,点击“导出”,选择“快速”格式并勾选“保存为文件”,完成下载。
记录原站信息
准备纸笔或记事本,记录原站的数据库信息(数据库名、用户名、密码、主机地址)、网站URL(包括http和https版本)及wp-config.php中的关键配置参数,便于后续本地还原时核对。
文件迁移与本地环境配置
上传文件到本地
将备份的WordPress网站文件解压后,复制到本地Web服务器的根目录,XAMPP默认根目录为/xampp/htdocs/,可将文件放入/xampp/htdocs/wordpress/(自定义文件夹名即可)。配置本地数据库

- 启动XAMPP等集成环境,确保Apache和MySQL服务已运行。
- 在浏览器访问
http://localhost/phpmyadmin,登录后点击“新建”,创建一个与原站数据库名相同的数据库(若不同,后续需修改wp-config.php中的数据库名称)。
导入数据库
在phpMyAdmin中选择新建的数据库,点击“导入”,选择之前备份的数据库文件(.sql格式),等待导入完成,若文件较大,可尝试通过“服务器导入”功能或命令行导入(如mysql -u root -p 数据库名 < 备份文件.sql)。
数据库修改与域名替换
本地迁移的核心在于将数据库中指向原域名的链接替换为本地地址,推荐使用以下两种方法:
使用SQL查询批量替换(推荐)
- 在phpMyAdmin中选择目标数据库,点击“SQL”选项卡。
- 执行以下SQL语句(将
原域名.com替换为实际域名,localhost/wordpress替换为本地路径):UPDATE wp_options SET option_value = REPLACE(option_value, 'http://原域名.com', 'http://localhost/wordpress') WHERE option_name = 'home' OR option_name = 'siteurl'; UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://原域名.com', 'http://localhost/wordpress'); UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://原域名.com', 'http://localhost/wordpress'); UPDATE wp_posts SET guid = REPLACE(guid, 'http://原域名.com', 'http://localhost/wordpress');
注:若前缀非
wp_,需替换为实际前缀。
使用插件替换(适合非技术人员)
- 将WordPress网站文件上传至本地后,通过浏览器访问
http://localhost/wordpress/wp-admin/install.php,完成初始安装(即使数据库未修改,也可进入后台)。 - 安装“Better Search Replace”插件,搜索“原域名.com”,替换为“localhost/wordpress”,勾选所有表后执行替换。
本地环境配置与测试
修改wp-config.php
若本地数据库名、用户名、密码与原站不同,需编辑wp-config.php文件,修改以下参数:define('DB_NAME', '本地数据库名'); define('DB_USER', '本地数据库用户名'); define('DB_PASSWORD', '本地数据库密码'); define('DB_HOST', 'localhost'); // 本地数据库主机通常为localhost配置虚拟主机(可选)
为方便访问,可配置本地虚拟主机,在XAMPP中编辑/xampp/apache/conf/extra/httpd-vhosts.conf,添加以下配置:
<VirtualHost *:80> DocumentRoot "/xampp/htdocs/wordpress" ServerName wordpress.local <Directory "/xampp/htdocs/wordpress"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>保存后修改本地hosts文件(Windows路径为
C:WindowsSystem32driversetchosts,macOS/Linux为/etc/hosts),添加0.0.1 wordpress.local,即可通过http://wordpress.local访问。测试功能完整性
访问网站首页、文章页、分类页,检查样式、图片、链接是否正常;登录后台,验证主题、插件功能是否可用;检查固定链接设置是否生效(若出现404,需在本地Apache中启用rewrite模块)。
常见问题与注意事项
- 权限问题:确保本地WordPress目录及其子目录(如
wp-content)的权限为755,文件权限为644,避免上传或安装插件失败。 - 图片/资源路径错误:若数据库替换后仍显示旧域名,检查
wp_options表中的home和siteurl,或使用“ Velvet Blues Update URLs”插件进一步修正。 - 本地环境与服务器环境差异:部分插件可能依赖服务器特定函数(如
$_SERVER['DOCUMENT_ROOT']),本地测试时需确认兼容性。
相关问答FAQs
Q1:迁移后本地网站无法显示图片,但路径正确,如何解决?
A:通常因数据库中图片的完整URL未完全替换,可使用“Better Search Replace”插件,再次搜索旧域名(含http/https和www版本),替换为本地路径;或检查wp_posts表中的post_content字段,手动替换残留的旧域名链接,确保本地wp-content/uploads目录存在且可写(权限755)。
Q2:将本地网站迁回服务器时,如何快速恢复原域名?
A:方法与本地迁移类似,但需反向操作:1)备份本地数据库和文件;2)将文件上传至服务器,在服务器phpMyAdmin中导入本地数据库;3)执行SQL替换(将localhost/wordpress替换为原域名);4)修改服务器wp-config.php中的数据库信息(确保数据库名、用户名、密码与服务器一致),若使用SSL,需将http替换为https。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复