您好!欢迎光临赵容部落O(∩_∩)O~
时间:2013年11月16日 栏目:VPS教程 作者:赵 容 点击: 29,937 次
关于这篇文章,可能花较多的内容来解决WHMCS迁移后的乱码问题,大家可能要问,你这个标题不是写的WHMCS迁移到VPS的教程吗?其实,数据的迁移真的是一个简单的过程,所以我只是大概阐述,不过这个乱码的问题,却是一个令很多人纠结的事情。
Hostgator在本月对基本上所有的分销账户服务器进行了迁移和IP更换,并带来了大量的问题,可能影响到目前所有IDC销售的WHMCS主机,一些朋友就想算了,要么买个终身授权,要么就去用无视授权,受部分客户所托,我写一篇WHMCS从主机到VPS的迁移教程,请留意,本文提及的VPS编译的是军哥LNMP一键包最新版本。
整个搬迁的过程,我将他分为三个部分:备份→导入→调试。
因为这里赵容所说的是从WHMCS主机迁移,所以备份非常的简单,登陆cPanel面板,选择文件菜单中的备份功能。
然后选择下载或者生成全部备份,这里,你可以选择备份在本地主目录,也可以备份到您的VPS或者服务器上,我这里直接备份到准备用来恢复的VPS上,更方便。
如果该VPS并未安装FTP,在这里备份也可以选备份目的地为安全副本(SCP),就是通过类似SSH直接备份到您的VPS上的目录。
注意,CP面板备份的压缩包中,我们仅需要了解两个内容的目录:
1、public_html,这个目录下有我们原本的所有的源码文件,在压缩包中homedir.tar压缩文件内;
2、数据库文件,这个是我们的数据库,在压缩包的mysql目录中,以您的数据库名称命名的一个.sql文件。
教程假定我们已编译LNMP及必要组件(如:ionCube,IMAP等),同时,新建虚拟主机您的WHMCS域名,在/home/wwwroot/下有了您建立的该域名的目录。
恢复我将它分为2个部分:
1、恢复文件。在VPS中命令解压压缩包中的homedir.tar,得到public_html文件夹,mv里面的内容到您建立的虚拟主机的文件目录/home/wwwroot/****,并修正目录权限;
2、恢复SQL。先登陆phpmyadmin,建立与我们之前WHMCS同名的数据库,数据库用户,密码(这里您也可以建立不同的,最后修改下配置文件即可,图省事的就知道建立一模一样的)。
接下来,在MySQL文件目录,用mysql –u 用户名 –p 数据库名 < 数据库文件,导入数据库。
在调试篇的开头,我们说下乱码问题,先看一张截图:
如上图,恢复后,我们发现后台添加的中文内容,全部乱码的,包括网站标题,产品信息,邮件模板,等等。
在网络上搜索了一通,大部分包括两类,一个是解决跟我上面图中一样的乱码问题的,千篇一律是修改configuration.php,添加$mysql_charset = "utf8";;另一个是密码乱码,导致后台无法登陆服务器和主机,这个是替换配置文件中的$cc_encryption_hash这一行内容。
很遗憾,这两个都无法解决WHMCS主机迁移到VPS上的乱码问题,第一个方案没有作用,第二个方案根本不适合,因为我们是直接恢复原来的文件,$cc_encryption_hash内容根本就是一模一样的。遇到问题,要举一反三。我将备份的数据库文件打开,发现数据库内容里面本身就是乱码的,phpmyadmin登陆到原来主机的数据库中,查看到的编码也是utf8,这就真的见鬼了。原因只有一个,原来的数据库编码根本就不是utf8,尝试远程强制编码为latin1导出数据库,再打开数据库查看,发现导出的数据库不是乱码了,看来,原来的数据库是latin1,并非utf8.
这样的话,我们可以有两种解决方式:一种,就是导出latin1之后转码,转为utf8再导入恢复;另一种更简单,直接修改configuration.php,添加$mysql_charset = "latin1";,强制在新的环境也使用latin1。
另外,我尝试过在DA面板,CP面板恢复,都没遇到这种乱码问题,但是LNMP尝试过多台VPS,均为乱码。
请留意我以上并不是一个通用的解决方案,以上的过程只是告诉您遇到问题可以多角度的检查,不要看教程就死搬,照搬也要看自己的环境是不是一模一样。另外,Hostgator新服务器上的数据库导入可能不会乱码,旧服务器数据库的编码部分有类似问题。
乱码问题解决之后,我们转移到VPS上,还需要对下列问题加以修改或者处理:
1、在VPS上设定自动任务,原来使用主机是直接添加到时钟守护作业,现在在VPS上用crontab -e添加自动任务进程;
2、写每日自动备份脚本,原来在主机上只是偶尔备份,换到VPS上建议做每日备份,安全第一,脚本可修改原来的文章:VPS自动备份
3、如果有域名业务,登陆代理账户,修改授权IP为自己的VPS的IP;
4、如果公告啊,下载啊,帮助啊这些页面之前有伪静态的,就把whmcs在nginx下的伪静态规则写到conf,然后修改域名配置文件即可(这个也可以先弄好了,创建虚拟主机的时候直接就给定伪静态的文件名),我是开始就选的other,所以直接修改了other.conf的,下面是规则:
# Announcements
rewrite ^/announcements/([0-9]+)/[a-zA-Z0-9-]+\.html$ /./announcements.php?id=$1 last;
rewrite ^/announcements$ /./announcements.php last;
# Downloads
rewrite ^/downloads/([0-9]+)/([^/]*)$ /./downloads.php?action=displaycat&catid=$1 last;
rewrite ^/downloads$ /./downloads.php last;
# Knowledgebase
rewrite ^/knowledgebase/([0-9]+)/[a-zA-Z0-9-]+\.html$ /./knowledgebase.php?action=displayarticle&id=$1 last;
rewrite ^/knowledgebase/([0-9]+)/([^/]*)$ /./knowledgebase.php?action=displaycat&catid=$1 last;
rewrite ^/knowledgebase$ /./knowledgebase.php last;
…………
建议做到一定基础的可以去买个独立授权,装在VPS上,配置SSL,开端口之类的都自己方便点,官方买个终身价格是249.95刀:www.whmcs.com
实在不行的,也可以用无视授权版本放在国内,或者荷兰啦这些抗诉的地区,迁移过程中遇到其他问题的,或者迁移后还有什么注意事项需要补充的,都可以留言我大家一起看看。
声明: 博客仅为分享信息绝非推荐,网站不参与交易绝非中介,内容均仅代表个人观点绝非权威,读者请自行考虑后入手并自担风险!一分钱一分货仍是恒久不变之真理,未成年读者(包括生理和心理)请在监护人陪同下访问本站!本文由( 赵 容 )原创编译,转载请保留链接: WHMCS(主机)迁移到VPS(LNMP)教程及乱码解决方案码字不易,谢绝复制粘贴! 关于使用: 本站主要分享服务器及VPS信息,不提供任何产品销售及代购,所有访客朋友请在国家法律法规许可范围内购买和使用产品,QQ群讨论:683851361. 关于安全: 任何IDC都有倒闭和跑路的可能,主机线路更不可控,月付和备份是您的最佳选择,请保持良好的、有规则的备份习惯.
开心版放香港会不会出事
2014-11-19 04:51😮 😮 😮 可不可以介绍下ispconfig3 的安装方法
2013-12-25 08:44这个东西我以前确实看过,不过没试过,所以就没有类似的内容。
2013-12-25 08:54😥 有时间看下吧 我是小白 不懂的 感觉这个挺不错的
2013-12-25 12:36技术贴默默支持
2013-11-16 19:55非常实用。 不过好像新服务器上的Whmcs访问很慢?
2013-11-16 11:21鳄鱼迁移后新服务器比老的快了一点点,但是毛病多了不是一点点!
2013-11-16 11:22http ://bluehost.com/cgi/info/reseller
2013-11-16 11:24Free Billing System
这不是也有whmcs
基本上这些国外较大的主机商分销账户都送一个whmcs授权。
2013-11-16 11:25这个和鳄鱼一样吗?可以卖whmcs主机?
2013-11-16 11:26这个需要咨询主机商官方,他的地盘他做主的。。
2013-11-16 11:27HelloVM的Whmcs就是BlueHost的IP
2013-11-16 11:28😕 😕 数据库密码忘了怎么办 赵大帮我
2014-08-27 23:32– -他家的不能卖。。他是直接给你一个whmcs授权的。不是你自己去申请的。
2013-11-16 20:23