一朋友网站备案审核中,网站不给访问,每天都可以说在损失,遂荐其购US的VPS(偶提供技术小支持),马上改掉域名A记录,不用备案,立马上线!这不,腰也不酸了,腿也不疼了!网站也不抽筋了,开始运作了!
废话完毕,进入正题!
先说下论坛原来的运行环境以及搬迁后的运行环境:
之前:windows 2003 虚拟主机 + php 4 + mysql 4 + discuz 6.1
之后:linux VPS + php 5 + mysql 5 + discuz 6.1
因为网站已经无法访问,所以不用关闭网站也是可以的。原主机是虚拟主机,可以在phpmyadmin里备份,或者让服务器管理员停掉网站的mysql数据库,直接拷贝出数据库(我采用后者)。在空间后台将整个网站进行打包后用ftp将网站打包数据以及数据库打包数据下载回来。
配置VPS这一块请见:http://blog.is36.cn/nginx_php_mysql_centos_128MB/
将域名解析记录解析到VPS上,先放置一个正在维护更新的页面。
在ssh下进入mysql管理系统,或者装下phpmyadmin也可以,为了不出错误,建立一个跟原来同登录名、密码、数据库名、数据库编码方式(这一点重要,下面会说明)的数据库!
- CREATE DATABASE `bbs_data` ; //创建数据库
- CREATE USER 'bbs_data'@'localhost' IDENTIFIED BY 'mima123'; //创建一个没有任何权限的用户
- GRANT USAGE ON * . * TO 'bbs_data'@'localhost' IDENTIFIED BY 'mima123' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ; //设置数据库
- GRANT ALL PRIVILEGES ON `bbs\_data` . * TO bbs_data'@'localhost' WITH GRANT OPTION ; //将数据库所有权限赋予给该mysql用户
将原来下载好的数据库拷贝到mysql对应的建立了的数据库下
将所有网站资料上传,推荐先上传除了附件以外的所有资料,最后依照最新顺序,上传最近的附件!这样访客打开不会看到太多的无图片显示在那里了。
上传完毕后,记得设置某些目录权限为777权限!如下:
比如安装和升级 Discuz! 需要修改 ./attachments、./customavatars 、./forumdata、./forumdata/cache、/forumdata/templates 、./forumdata/threadcaches、./templates、./templates/default、./templates/default/*.* 的文件权限
安装和升级 SupeSite/X-Space 需要修改 ./templates、./channel/、./channel/*.*、./data、./data/robot、./data/temp、./data/system、./templates/、./templates/default、./templates/default/*.*、./user 的文件权限。
等域名生效后(如果没有可以本机设置hosts文件记录进行访问),看看网站是否正常了。可能会出现页面上有乱码,那肯定就是连接数据库的编码方式有问题了。
搜索下载下来的网站里带config的文件,我这里是:
bbs\config.inc.php
uchome\config.php
ucenter\data\config.inc.php
找到MYSQL字符集(dbcharset)选项,将其设定为你之前建立的数据库编码方式,如果你不知道设置成哪个编码方式,可以phpmyadmin里查看,或者进入mysql管理系统:
show create database bbs_data;
就会知道是什么编码方式,将各个连接数据库的配置文件的MYSQL字符集修改过来,那么乱码问题就没咯!
需要注意的如下,遇到问题可以想想如何解决:
VPS自行管理,自由度更大,不过如果技术不够的话还是不要尝试咯!
Linux下对于任何文件夹或者文件都是大小写敏感的,这点很重要!
如果原来论坛启用了rewrite,记得要再nginx中加入这些记录,具体见: