WordPress网站迁移

93 阅读2分钟

背景

公司有个官网,是找第三方用wordpress做的,每月付费由第三方进行维护,现在想把这个网站迁回公司,由我们自己维护。 领导让我验证一下这个需求的可行性。

总体思路

搭建wordpress环境,靠“All-in-One WP Migration”插件进行网站数据导入。

让我们来验证一下。

搭建wordpress

找到一个快速搭建wordpress环境的工具:localwp。下载安装好后,按步骤建立一个wordpress网站。

导出原网站

原网站管理后台安装好“All-in-One WP Migration”插件,导出网站数据包:All-in-One WP Migration →  Export → Export to → File

image.png

导入新网站

新网站管理后台安装好“All-in-One WP Migration”插件,打开导入页面:All-in-One WP Migration →  Import

这里遇到一个问题,导出的数据包有九百多兆,直接导入是不行的,php默认限制了上传文件的大小,最大300兆。

按照网上的解决方案,修改.htaccess或wp-config.php或者两个都修改是不行的。操作如下:

1、在vscode中打开网站代码: image.png

2、修改.htaccess、wp-config.php文件

image.png

image.png

image.png

3、网站重启:Stop site → Start site

image.png

如此操作过后,发现不生效,还是和原来一样的限制。

最终的解决方案还是要改php.ini文件才行

1、打开网站目录

image.png

2、找到php.ini.hbs文件,拖到vscode中进行编辑

image.png

3、文件内搜索以下4个配置项,修改相应的值为你要的值

max_execution_time = 1800
upload_max_filesize = 1024M
post_max_size = 1024M
memory_limit = 1024M
  • post_max_size、upload_max_filesize、memory_limit这3个值应该要大于你导出的数据包的大小;
  • max_execution_time设置为你觉得需要的时间(秒数),数据包越大需要的时间越长,也可以设置为0,表示不限制。

4、网站重启:Stop site → Start site

image.png

如此,就解开了php对上传文件大小的默认限制,然后就可以顺利使用“All-in-One WP Migration”插件进行网站导入了:All-in-One WP Migration →  Import

结论

导入后,新网站和旧网站使用起来一模一样,可以完美迁移。给“All-in-One WP Migration”插件点个赞!

注意

1、为避免意料之外的报错,php版本的选择最好与原网站一样,如果一开始用localwp搭建wordpress时选错了php版本也不要紧,可以通过这里重新选择php版本,点击Apply即可:

image.png

2、退出localwp程序后,再次运行localwp → Start site,之前搭建的网站可以运行,但是管理后台却不再可用了, 页面报“# The page can’t be found.”,并且网站目录下的php.ini.hbs文件又恢复成了初始的模样。