技术支持角色:老周,45岁,干了12年运维的“草根站长”,说话带点东北腔,修过上千台服务器,脾气好但最烦别人不备份就瞎搞。
问:老周,我原来用苹果CMS建了个站,现在服务器到期了,想搬家到新服务器,但域名还是原来那个,怎么搞得跟没搬过一样?
答:这事儿我一个月能接二十回,说白了就是——文件打包、数据库导出、新服务器解压、改配置、导入数据,你只要按我说的步骤来,域名、后台、模板、播放器啥都不用改,直接无缝切换,切记,老服务器别急着关,先在新服务器上把环境跑通了再切换解析。
问:那第一步我该干嘛?总不能直接打包吧?
苹果CMS搬家换域名?老域名不想丢?手把手教你原封不动迁过去!
答:先登录你老服务器的宝塔或SSH,找到网站根目录(一般是 /www/wwwroot/你的域名),右键整个目录打包成zip,这一步慢,但你千万别干等,同时去PHPMyAdmin里把数据库导出成SQL文件——注意,导出时选“自定义”,把“添加DROP TABLE”勾上,不然导入时容易报错,两个包都下到本地,完事儿。
问:新服务器环境怎么装?我买的CentOS,啥也没装呢。
答:别自己装,累死,用宝塔面板,一键装环境,记住版本够用就行:PHP 7.4 + MySQL 5.7 + Nginx 1.18,这是苹果CMS v10最稳的组合,装完宝塔,新建站点,域名填你那个老域名,PHP版本选7.4,数据库也新建一个,名字随便起,密码记好。
问:文件解压之后,为啥首页打开是空白?
答:多半是伪静态没开,去宝塔站点设置里,找“伪静态”,选“thinkphp”那一项,保存,然后重启Nginx,再不行,检查 runtime 目录权限——得是755或者777,不懂就直接给777,别纠结,还有,把 application/database.php 里的数据库账号密码改成你新建的。
问:数据库导入的时候报错,说什么“SQL语法不对”?
答:你这八成是没勾那个“DROP TABLE”,没事,别慌,用Notepad++打开SQL文件,Ctrl+H把 CREATE TABLE 替换成 DROP TABLE IF EXISTS; CREATE TABLE,然后再导入,要是还报错,那就是PHPMyAdmin上传限制,用帝国备份王或者直接命令行导入,快得多。
问:搞定,前台能开,但后台登录进去一片空白,咋回事?
答:后台空白十有八九是缓存目录没清,打开网站根目录下的 /runtime,把里面所有文件夹里的文件全删了,保留空文件夹就行,然后刷新后台,立马就好,要是还不行,那就是PHP版本太高,降到7.3试试。
问:我老站有套模板,直接放上去能用吗?
答:模板没改过核心文件的话,直接扔到 /template 目录下,后台“外观-模板管理”里启用就行,就怕你之前找人改过模板里的函数,那可能不兼容——所以搬家前,最好把模板文件夹原封不动打包,别只打包根目录,还有一种常见问题:模板显示错位,CSS加载不出来,你去后台“系统-站点URL”里把网站域名改成新地址(如果没换域名就忽略)。
问:播放器怎么保持原来的?我用的自定义解析接口。
答:播放器配置存在数据库里,只要你数据库导入完整,播放器设置全在,但有一点要检查——mac_play_url 这种表里的解析接口地址,如果之前填的是老IP或老域名,记得改成新服务器的,最简单的排查方法:后台“视频-播放器配置”里,逐个看解析地址有没有带老服务器IP的,有就换。
问:搬完家,老站还能访问,新站测试也没问题,怎么切换解析?
答:去你域名管理后台(阿里云/腾讯云),把A记录的IP换成新服务器IP,TTL设成600秒(10分钟生效快),别删老解析记录,直接改值,等10分钟到2小时,你本地清下DNS缓存(Windows按 ipconfig/flushdns),然后访问域名——如果看到新站内容,就成了。老服务器再留3天,确认无异常再关机。
问:最后一步,还有啥要调的?
答:去新服务器后台,把“系统-双端同步”打开,然后去“缓存-更新所有缓存”,再把 /runtime 清一次(就上面说那招)。改下后台管理员密码,防止旧服务器被黑后留了后门,完了,就这么简单,记住一句话:搬家怕的不是麻烦,是丢数据,备份做足,你随便造。



发表评论