背景
公司有个官网,是找第三方用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
导入新网站
新网站管理后台安装好“All-in-One WP Migration”插件,打开导入页面:All-in-One WP Migration → Import
这里遇到一个问题,导出的数据包有九百多兆,直接导入是不行的,php默认限制了上传文件的大小,最大300兆。
按照网上的解决方案,修改.htaccess或wp-config.php或者两个都修改是不行的。操作如下:
1、在vscode中打开网站代码:
2、修改.htaccess、wp-config.php文件
3、网站重启:Stop site → Start site
如此操作过后,发现不生效,还是和原来一样的限制。
最终的解决方案还是要改php.ini文件才行
1、打开网站目录
2、找到php.ini.hbs文件,拖到vscode中进行编辑
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
如此,就解开了php对上传文件大小的默认限制,然后就可以顺利使用“All-in-One WP Migration”插件进行网站导入了:All-in-One WP Migration → Import
结论
导入后,新网站和旧网站使用起来一模一样,可以完美迁移。给“All-in-One WP Migration”插件点个赞!
注意
1、为避免意料之外的报错,php版本的选择最好与原网站一样,如果一开始用localwp搭建wordpress时选错了php版本也不要紧,可以通过这里重新选择php版本,点击Apply
即可:
2、退出localwp程序后,再次运行localwp → Start site,之前搭建的网站可以运行,但是管理后台却不再可用了, 页面报“# The page can’t be found.”,并且网站目录下的php.ini.hbs文件又恢复成了初始的模样。