Discuz 搬家教程

网站的空间有独立与虚拟之分,下面分别介绍两种空间的搬家方法。

一、独立主机
网站搬家即数据的迁移,搬家前不论独立还是虚拟主机,网站都需关闭。数据的迁移分为数据库数据及程序和附件文件两部分的的迁移。
数据库的迁移:首先停止老服务器上的 MySQL。复制 MySQL 数据存放目录下的数据文件,至于 MySQL 的数据存放目录,可以查看 MySQL 配置文件中的 datadir 参数。(对于 linux 系统的 MySQL 配置文件一般为 /etc/my.cnf ,windows 环境下为 MySQL 安装目录路径的根目录下的 my.ini 文件。)
将数据文件移到新服务器相对应的 MySQL 数据存放目录下,这里注意到的一点就是对于 Linux 系统,注意移动数据文件之后,将相对应的文件属主改成你的 MySQL 运行账号。
程序和附件的迁移:将你的老服务器 WEB 目录下所有文件移到新服务器的 WEB 目录即可。
修改配置文件信息:

1、discuz! X3.4 的配置文件在 config 目录下,即 config.global.php 和config.ucenter.php 两个文件。

2、UCenter 的配置文件在 data 目录下,即 config.inc.php 文件。

配置文件里记录的数据库地址、访问用户名、密码都要根据你的新服务器的相应信息进行修改。同时,如果你的域名发生变化,要修改配置文件中相应的域名信息。

3、由于 UCenter 的后台存放了各个应用的配置信息,所以当你修改完配置文件的信息之后,对应的需要去 UCenter 的应用管理中,把对应的信息(尤其是 IP 和域名)校正为正确的地址。

4、以下两个目录 属性 安全 users给予写入权限
\data
uc_server\data

至此,对于独立主机用户的站点快速搬家流程说明完毕。整个流程比较简单,唯一消耗的主要在于时间,当然这需要根据你的站点和传输速度而定。

二、虚拟主机
虚拟主机的数据库数据一般站长是直接拿不到的,最好是通过网站后台备份数据库数据,然后到新的空间中恢复数据库的备份就可以了,但新空间要全新安装一遍程序。

1、备份:
网站的数据部分,可以在 UCenter 后台直接进行备份,
登录 UCenter 后台→数据备份
在 UCenter 下可以只备份 UCenter 的数据,也可以备份所有应用或者部分应用的数据,这里我们选择备份所有应用的数据。提交后等待备份完成,可以到数据备份记录里查看。这里需要注意的是,在 UCenter 备份的整站数据有两部分,分别存放在 UCenter 和 Discuz! X 里面各一部分:UCenter 是在/uc_server/data/backup_日期_ABCDEf(ABCDEF是备份数据名称范例);Discuz! X 是在网站根目录 /data/backup_日期_ABCDEf(ABCDEF是备份数据名称范例)。很多人的问题就出现在这里,上传数据库备份文件的时候,千万要注意这两个备份文件要放到正确的位置,避免数据不完整丢失,造成会员,帖子等数据出错。
备份程序文件相对于虚拟主机来说,就要特别注意 UCenter 和 Discuz! X 的配置文件和存在 UCenter 中的头像等的备份。
备份 UCenter 的所有程序文件,其中要注意 data 目录以及其下的 config.inc.php 文件一定不能丢失,data 目录下的 backup 目录下存放的是刚才备份的数据,avatar 目录下存放的是所有会员的头像图片,所以这些文件一定不能丢失。
备份论坛的所有程序文件,其中要注意 data/attachment 附件目录以及 config 目录下的 config.global.php和 config.ucenter.php 文件一定不能丢失。如果有模板风格的,也要单独备份后下载,待新空间安装完毕,再重新上传启用;之前网站有通过DIY的页面,这时要导出备份,新空间装完再导入即可。
还有一点很重要:确保搬入服务器和原服务器的数据库版本和编码一致,如果编码一不致可能会出现乱码的情况。

2、安装新程序及附件、头像等的上传
全新安装论坛,安装的时候 Discuz! X 及 UCenter 数据库名以及表名前缀一定要和原来的一致;
程序头、尾(如果有改动)、diy数据都要重新覆盖;下载到本地的附件、头像等数据上传到新空间正确的位置;伪静态规则文件、模板文件及Logo网站标识等重新上传到新空间正确位置。

3、恢复数据库
首先登录到 UCenter 后台,检查各应用是否通信成功,然后用创始人登录:
UCenter 后台→数据备份→数据备份记录→数据恢复→(找到相应的备份,如果备份显示不存在,那就说明备份文件上传的位置错了!)点击“详情”→选择备份的数据→提交。

4、后续操作
由于 UCenter 以及 Discuz! X 的 URL 路径和之前比发生了变化,所以要在 UCenter 后台修改为正确的路径。
UCenter 管理后台→应用管理→编辑
Discuz! X 的 URL 路径。检查应用的 UCenter 配置信息,UCenter 管理后台→应用管理→编辑论坛的应用,找到应用的 UCenter 配置信息,复制其中的全部内容,分别覆盖到论坛的 config 文件最后的关于 UCenter 的配置信息部分。更新 UCenter及论坛的缓存后,网站搬家基本就好了,剩下的伪静态等问题,要确认服务器设置好 rewrite 后,在设置开启。

IIS7设置DZ论坛URL 静态化

IIS7,要先安装 IIS URL重写模块2

进入DZ后台-->全局-->SEO设置-->URL 静态化,全部勾选,其他的默认,然后点击提交。

点击“查看当前的 Rewrite 规则”根据自己的主机类型选择,比如我是阿里云的 云服务器 ECS,用的WIN2008 R2的系统,就选择“IIS7 Web Server(独立主机用户)”

论坛根目录新建 web.config ,把“IIS7 Web Server(独立主机用户)”的规则复制进去。

再把下面代码加到“IIS7 Web Server(独立主机用户)”的代码前和代码尾。

代码前:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>

代码尾:
</system.webServer>
</configuration>

Discuz论坛设置游客可以查看图片下载附件

登录Discuz!后台-用户-用户组-系统用户组,找到游客组并点击该行后边的编辑按钮,点击:论坛相关-附件相关-允许下载附件、允许查看图片这两项是控制浏览图片和下载的,设置为允许并提交即可。

如果想设置,所有用户包括游客都可以查看图片下载附件,在会员用户组和系统用户组,点击批量编辑,论坛相关-附件相关-允许下载附件、允许查看图片即可。