登录 注册

登录

问题 网站迁移后中文乱码的问题

更多
2006年12月22日 19:06 #1 作者: Joomla之门
很久以前我就在Joomla官方网站看到有关迁移网站的帖子,我以为我学会了。Joomla是如此容易迁移,以至于我们可以用这样的方式建站:在自己的电脑上假设一个本地测试服务器(比如用XAMPP),然后开始在自己的电脑上建站。等到内容比较丰富,网站调试正常后,开通远程空间,迁移网站到远程服务器。呵呵,这样既省事又省钱——空间购买后直接进入正常运行,几乎不需要再调试了。

但是,今天我第一次迁移网站就发现了问题。这个问题已经不是什么新鲜话题了,但是却没有人提供完美的解决方案。

首先解释一下我的两边服务器环境:

本地:

Database Version:  5.0.24a-community-nt 
PHP Version:  5.1.6 
Web Server:  Apache/2.2.3 (Win32) mod_ssl/2.2.3 OpenSSL/0.9.8d mod_autoindex_color PHP/5.1.6


远程:

Database Version:  4.0.25-standard-log 
PHP Version:  4.3.11 
Web Server:  Apache/1.3.34 (Unix) mod_gzip/1.3.26.1a mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 PHP/4.3.11 FrontPage/5.0.2.2635 


我的迁移过程是这样的:上传除了 /configuration.php 以外的所有文件到远程服务器;按照空间提供商所给的信息修改/configuration.php  文件并上传;从本地服务器导出网站数据库;在远程服务器上安装phpmyadmin(我今天购买的空间比较特别,需要自己安装phpmyadmin);用自己安装好的phpmyadmin导入数据库。

然后,我在浏览器里输入网站域名(已经指向远程服务器IP),结果发现,菜单上原来的中文变成了乱码!

我求助于AutoIt,他说这是 MySQL 版本不同所造成的。我看了他网站的有关帖子,还是没有弄明白怎么弄。

有一个奇怪问题就是:我把本地导出的 sql 文件用 EmEditor 打开,结果看到数据库里面的中文菜单项都是乱码,而这个sql文件本身的编码是 UTF-8, 我在本地服务器安装网站时选择的就是UTF-8编码。

这似乎是本地服务器的原因:我导出的sql文件里面就有乱码!我在本地的phpmyadmin里面查看数据库内容,同样看到了乱码。

但又如何解释:网站在本地打开时前台中文显示正常?

另外,我想到的问题是:这不是我一个人遇到的困难。可能还会有其他很多用户遇到这个问题。如果让大家都放弃本地服务器,而直接从远程开始安装,我觉得不是一个人性化的解决方案。

无论是建造本地服务器的软件,还是远程空间的环境,各种各样的apache、php、mysql、phpmyadin 版本五花八门,我们不可能针对特定的远程服务器建造一个完全一样的本地服务器。所以,有必要把这个网站迁移过程中中文(数据库)乱码的问题好好讨论一下。

我们能否研究出来一个“指南”或者“手册”一样的东西,用户按照步骤操作即可解决这个问题?抑或直接做成某个文件,执行一段代码就能搞定?哪位高手已经解决了这个问题,不妨在这里指点一二。谢谢!

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!

登录 或者   注册一个会员帐号 来参与讨论

更多
2007年01月19日 20:35 #2 作者: fly1930
http://www.ijoma.com/content/view/216/1/

我也是才解决的这个问题,来晚了 。

登录 或者   注册一个会员帐号 来参与讨论

更多
2007年01月20日 10:35 #3 作者: Joomla之门
刚才拜读了你的教程,非常详细。感谢指点!以后我们迁移网站有办法了!呵呵。

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年01月28日 19:33 #4 作者: hingwu

http://www.ijoma.com/content/view/216/1/

我也是才解决的这个问题,来晚了 。

现在链接打不开了。。。。

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年01月29日 00:38 #5 作者: 5831483
是呀  麻烦在提供一个能看到的网址吧  我也正为这事犯愁呢

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年03月08日 15:47 #6 作者: zkxjm
需要啊,xjmhzau@yahoo.cn谢谢

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年03月08日 18:28 #7 作者: Joomla之门
现在迁移网站应该很容易了,用 JoomlaPack 就能自动完成。

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年09月06日 23:31 - 2008年09月06日 23:44 #8 作者: eblise
不好意思,也遇到乱码问题。把这个帖子顶起来
我的测试平台
###### ApacheFriends XAMPP (basic package) version 1.6.7 ######
Apache 2.2.9
MySQL 5.0.51b
PHP 5.2.6 + PHP 4.4.9 + PEAR
PHP-Switch win32 1.0 (please use the "php-switch.bat")
XAMPP Control Version 2.5 from www.nat32.com
XAMPP Security 1.0
SQLite 2.8.15
OpenSSL 0.9.8h
phpMyAdmin 2.11.7
ADOdb 4.98
Mercury Mail Transport System v4.52
FileZilla FTP Server 0.9.25
Webalizer 2.01-10
Zend Optimizer 3.3.0
eAccelerator 0.9.5.3 for PHP 5.2.6  (comment out in the php.ini)

我也遇到了乱码问题,我的网站在虚拟XP系统上建立的差不多了,为了保险起见,我又建立了一个虚拟XP系统,两个虚拟XP的IP地址不一样。练习一下网站迁移,我用了2中方式,一个是手动的,一个就是joomlapack
1. 手动方式
  1.1 备份htdocs下的所有文件为back.zip
  1.2 在phpmyadmin里,导出整个数据库为ylj.SQL文件,兼容模式mysql40,其它设置默认
  1.3 在新的虚拟XP系统里安装Xampp,并将back.zip解压到htdocs文件夹下
  1.4 打开phpmyadmin,导入数据库ylj.sql,兼容模式mysql40,字体模式utf-8
输入ip地址打开网站,除了VM不工作以外,其它一切正常;我把新的虚拟XP系统的地址改回原来的IP,VM就工作正常了,测试了一下所有的功能都没有问题。得到经验:VM配置里记录了网站的IP/域名,所以为了工作正常,在上传服务器前,一定要将空间的域名在VM里配置好,否则无法工作。

2. 用joomlapack
  2.1 在joomlapack控制面板里,选项--高级--强制mysql4兼容,其它保持不变,备份网站和数据库
  2.2 在新的虚拟xp系统里,安装XAMPP,并将备份的网站压缩解压至htdocs文件夹,然后输入IP地址访问网站,结果中文全部显示“???????”问号,后台基本正常,大部分中文显示正常,只有组件joomlapack显示“????”,不能显示中文,并且。但网站功能是正常的。我常识手动再次导入数据库后,还是乱码,前台中文显示大部分是“???”,只有部分组件显示的界面还可以看到中文。而且每次“保存”更改后就会退出后台管理。
这是怎么回事???还有在用joomlapack恢复网站时,是英文的,回复完后,后台依然是中文的1.5.6,这个中间不会有什么问题吧!?

期盼回复,谢谢!!
最后修改: 2008年09月06日 23:44 由 lntsky.

登录 或者   注册一个会员帐号 来参与讨论