X5.0 下载安装、升级前请大家先看此文再出手,内容有点多,如果您想认真看完,绝对有收获。
【环境要求】
从 X5.0 版本起,PHP 的最低要求已提升至 PHP8.0,如果您的 PHP 环境要求不满足,请先升级到 PHP8.0。
如果您使用的是老版本的 Discuz!,版本低于 X3.5 的社区,请先升级到 X3.5 版本。已经是 X3.5 版本的站点,可直接通过正常的安装程序进行升级。同时,安装程序内置了工具箱,熟悉情况的老站长们就不必询问为何 utility 目录不见了。
详阅:《Discuz! X5 安装程序的优化》
【关于升级】
不要到处找升级程序了,从 X5.0 开始安装程序内置升级程序,升级前请关闭站点、关闭所有插件。请详细阅读下面的内容:
1、确保您的旧版本 Discuz! 必须为 X3.5 版本,如不满足版本要求请先升级到此版本;
2、确保 UCenter 和 Discuz! 部署在一个数据库中;
3、确保您已备份了数据库和程序文件,将旧版本程序文件移动到其他目录下;
4、将旧版本的配置文件 config/config_global.php、config/config_ucenter.php 复制到当前新版本的 config/ 目录中;
5、点击“下一步”开始升级;
6、升级完成后可以将旧版本中 source/plugin/ 目录下的插件文件挑选后复制到新版本的对应目录下、将 template/ 目录下的模板文件挑选后复制到新版本的对应目录下(不要复制 template/default/ 目录);
7、升级完成后 data/attachment/ 目录以及 data/ 目录下其他目录请酌情复制;如旧版本应用涉及其他目录中的文件,请自行咨询相关开发者复制; 如果您对上面的内容看着的确有点摸不着头脑,可以观看《DiscuzX5.0正式版升级安装保姆教学》的视频教程,用完全覆盖法升级。官方说明里不会明确推荐覆盖法的原因是由于 X5.0 架构的升级,文件目录结构全变了,如果覆盖你会分不清哪个是新文件哪个是旧文件,当然如果你压根不关心(或者看不懂)的话无所谓。同时推荐阅读《Nginx+Discuz! X3.5/X5 安装出错解决办法》中的内容调整服务器配置。
【插件模板兼容性】
1、插件方面,官方已经在 X3.5 版本就强制要求必须兼容 PHP8.0,如果您使用的插件已经做好兼容,那么恭喜,可以直接在 X5.0 中使用。否则,说明插件已经落后了 2 个版本迭代了,请督促插件开发者速度适配 PHP8.0。
2、模板方面,严谨地说 X5.0 模板不可能 100% 兼容 X3.5 模板,但也不至于完全打不开的地步,可能使用某些新功能时会有异常。因此也请督促模板开发者速度适配 X5.0。
【升级补丁】
从 X5.0 起,官方在版本发布更新时将不再发布更新补丁程序,因为 X5.0 会自行提供补丁程序。当有新版本发布时,您可通过“管理中心”的“升级补丁”功能自行下载补丁文件后上传覆盖。若要使用此功能,请确保您的 PHP 已安装 zip 扩展。如果您无法正常使用 X5.0 自带的补丁下载功能,可重新下载官方发布的完整包覆盖。
友情提示:官方发布包会按照 Tri-Monthly 的节奏更新,即每月 1 日、10 日、20 日固定时间更新,如变更的文件数量较少或无重大变更会跳过,欢迎站长们定时关注。
【UCenter 不再内置】
从 X5.0 起,产品将不再内置 UCenter 服务端,仅保留 UCenter 客户端。有需要的用户可在安装 X5 前预先部署 UCenter 服务端(https://gitee.com/Discuz/UCenter)。不过,一般情况下这并无必要。即便您看重 UCenter 2.0 的 oAuth2 接口功能,X5 本身也已具备,而且目前能与 UCenter 对接的其他应用程序几乎已不存在。此外,产品还内置了多个 X5 站点相互登录的功能。
【环境部署】
如果你确实对环境部署很小白,建议使用宝塔初始化 Discuz! X5 的环境(此处不是广告哈),按照以下步骤安装:
1、进入宝塔面板“软件商店”;
2、选择“PHP 8.x”,是 8+ 就可以,8.5 也是没问题的,安装后安装扩展 opcache、redis;
3、选择“Redis”,版本不限;
4、选择“MySQL”,必须 5.7+(含),8.0 也是可以,看你服务器内存情况;
5、选择“Nginx”,版本越高越好不会有漏洞;
6、添加站点,上传 upload 目录中的代码到网站根目录。如需配置伪静态规则,选择“discuzx3”即可;
7、正常访问网站,进行安装,安装完成当站点前后台可以正常访问后 config_global.php 修改以下内容,开启 Redis:
$_config['memory']['redis']['server'] = '127.0.0.1';
$_config['memory']['redis']['port'] = 6379;
其他 Redis 配置信息酌情修改。
友情提示:如果您服务器内存足够,请给 PHP 留出足够多的内存(php.ini 中 memory_limit 的设置)
【关于 config_global.php 的说明】
1、前台和后台可以同时登录 2 个账号
$_config['admincp']['mustlogin'] = 0 且 $_config['admincp']['synclogin_front'] = 0 的时候,如果社区前台已经登录一个账号的情况下,登录“管理中心”可以登录另一个账号互不冲突;
2、仅扫码登录后台
管理中心绑定了微信扫码登录后,如果设置 $_config['admincp']['qrcode_only'] = 1,那么后台就只能扫码才能登录,不会出现用户名密码的输入框,增加后台的安全性;
3、后台二次校验
当 $_config['admincp']['validate']['method'] = 'default' 的时候设置 ['user'] 和 ['pass'] 可为管理中心增加一个额外校验,校验通过后才会显示管理中心界面。更多二次校验方法可以通过应用中心下载;
4、日志文件
$_config['log']['type'] = 'mysql' 说明日志文件默认是写入数据库的,如果您担心数据库膨胀过快可以改成 'file';
5、官方 IP 库
X5 默认启用官方的 IP 库,可以把 $_config['ipdb']['setting']['ipv4'] = 'system'。IPv6 同理,但是库文件较大默认是不带的,符合 IPv6 条件的服务器可以自行下载 https://gitee.com/Discuz/IP。
【关于 QQ 登录、微信登录相关插件】
由于 X5.0 系统级内置了 QQ 登录和微信登录的关系,所以如果您之前在 X3.5 版本中使用了相关插件,无论是不是官方插件,如果希望使用 X5.0 内置的第三方登录功能,那么就需要把数据转移到 X5.0 内置的第三方登录中,放弃使用以前的插件,因此您需要做以下操作:
1、关闭相关插件,注意是关闭不是卸载;
2、对于 “QQ 互联” 插件,执行下面的 SQL 语句,将用户的数据转移到系统表中
INSERT INTO `pre_common_member_account` (uid, atype, account)
SELECT uid, 6, conopenid
FROM `pre_common_member_connect`;
注意上面数字 6 为 QQ 登录数据,微信(服务号)登录是数字 4,pre_common_member_connect 为 QQ 互联用户表名称。
对于其他第三方的 QQ 登录、微信登录插件,请和相关插件开发者确认后更改上面的 SQL 即可把数据导入到系统的第三方登录数据中;
3、把之前填写在插件的相关配置信息填写到“第三方登录”相关功能中去,新的跳转地址留空提交,页面刷新后自动会告诉你正确的新地址,自己到相关平台更换即可;
4、测试无误后可酌情卸载旧插件;
友情提示:我们鼓励第三方插件作者制作比 X5.0 内置功能更完善的 QQ 登录、微信登录插件,但必须是基于 X5.0 第三方登录机制的全新结构登录插件,旧版登录插件按照 Discuz! 开放平台新规已被禁止在 X5.0 版本中更新。
【地区设置数据空缺】
为了方便各位站长个性化配置适合自己社区的地区数据,从 X5.0 开始地区设置的数据默认是空的,如需要请下载此文件后在“地区设置”中导入。
district_default.txt
(74.74 KB, 下载次数: 239)
(数据较多导入时请耐心等待,可能需要1分钟左右)
【旧版本的 X5.0 升级】
X5.0 正式发布前的所有版本都属于开发者版范畴,请访问下方链接下载 SQL 文件自行更新数据库。
《X5 官方 Git 已经变更为开源版的声明》
【有相关服务吗?】
官方的应用中心提供 代安装服务 和 升级服务,欢迎咨询。同时,如果您有任何 X5 相关问题、建议请发帖至 Discuz! X5 专区。
|
|