常规部署方式升级

概述

本文档将指导您如何升级使用常规部署方式的 Discuz! Q 。

TIP

常规部署方式升级,适用于:基于手动配置的环境、基于宝塔、基于镜像部署方式。

前提条件

已使用基于手动配置的环境、基于宝塔、基于镜像部署方式部署 Discuz! Q。

操作指南

常规部署方式支持以下两种升级方式,您可以根据您的具体需求进行选择。

使用 dl.php 自动升级方式(推荐)

  1. 使用浏览器访问http(s)://<已安装部署成功的网址>/dl.php ,如官网https://discuz.vip 则为https://discuz.vip/dl.php 。如下图所示:常规部署方式升级 - 图1

TIP

  • 如果左上角 Logo 处没有版本号信息,请下载并替换最新版本的安装工具 (opens new window),将下载的dl.php 文件放置于public 目录下。
  • 为了安全,dl.php 每次运行完成后,会在其所在目录下生成dl.php.lock 锁文件,升级前请先删除此文件。dl.php.lock位于public目录下。
  1. 单击【下一步】,Discuz! Q 将会对升级进行检查,检查成功后,在计划安装版本页面,选择需要升级的版本。如下图所示:

常规部署方式升级 - 图2

  • 选择下载的版本号必须大于当前安装版本号 ,否则无法继续。
  • 默认勾选【升级前删除原来的静态文件目录】,可根据实际需求进行选择。
  1. 单击【下一步】, Discuz! Q 将会自动执行升级。升级成功将会提示以下信息。如下图所示:

常规部署方式升级 - 图3

  1. 单击下一步完成升级。

手动升级方式

手动升级版本方式请根据您的现有版本与所需升级到的版本进行选择:

  • 以下操作以使用 Nginx 服务为例。如您使用其他 Web 服务,建议您使用自动升级方式,或参考以下操作进行升级。
  • 以下升级命令需按从上至下依次执行,否则将可能导致升级失败。

升级到v3.0.210926

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco init:activity
  1. 重启 Nignx 服务即可完成升级。

升级到v3.0.210917

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco upgrade:issue_at
  1. 重启 Nignx 服务即可完成升级。

升级到v3.0.210902

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco upgrade:removeNicknameBlank
  1. 重启 Nignx 服务即可完成升级。

升级到v3.0.210819

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco upgrade:addVotePermission
  1. 重启 Nignx 服务即可完成升级。

升级到v3.0.210729

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco upgrade:nicknameDuplicateRemoval
  1. 重启 Nignx 服务即可完成升级。

升级到v3.0.210715

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco notifications:migration
  1. 重启 Nignx 服务即可完成升级。

升级到v3.0.210713

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco upgrade:stopWordsNicknameSet
  1. 重启 Nignx 服务即可完成升级。

升级到v3.0.210706

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco postForeignKey:update
  1. 重启 Nignx 服务即可完成升级。

升级到v3.0.210628

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco upgrade:addUnpaidPermission
  1. 重启 Nignx 服务即可完成升级。

升级到v3.0.210609

  1. 在终端中,进入您的 discuz 的主目录并运行以下命令:
  1. php disco migrate --force
  2. php disco upgrade:upgradeOldPermissionData
  3. php disco upgrade:nicknameSet
  4. php disco upgrade:bindType
  5. php disco upgrade:questionMigration
  6. php disco upgrade:noticeAdd
  7. php disco thread:migration
  1. 修改您的网站主目录配置文件config.php, 查找字段'disks' =>的配置项添加如下内容:
  1. 'background' =>[
  2. 'driver' => 'local',
  3. 'root' => storage_path('app/public/background'),
  4. 'url' => 'background',
  5. 'visibility' => 'public',
  6. ],
  7. 'background_cos' => [
  8. 'driver' => 'cos',
  9. 'root' => storage_path('app/public/background'),
  10. 'url' => 'background',
  11. 'visibility' => 'public',
  12. ]
  1. 重启 Nignx 服务即可完成升级。

升级到v2.3.210528

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco upgrade:noticeAdd
  1. 重启 Nignx 服务即可完成升级。

升级到v2.3.210412

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco upgrade:noticeAdd
  3. php disco upgrade:noticeIteration
  1. 重启 Nignx 服务即可完成升级。

升级到v2.3.210207

  1. 在终端中,进入您的discuz 的主目录并运行以下命令即可完成升级。
  1. php disco migrate --force
  2. php disco upgrade:notice
  3. php disco upgrade:notice-iteration
  4. php disco upgrade:groupPermissionAdd
  5. php disco upgrade:settingAdd

TIP

升级成功前如您已设置为红色主题,升级成功后将默认回退为蓝色主题,您需在 Discuz! Q 管理后台重新设置为红色主题。

升级到v2.3.210202

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco upgrade:notice
  3. php disco upgrade:notice-iteration
  4. php disco upgrade:groupPermissionAdd
  5. php disco upgrade:settingAdd
  1. 重启 Nignx 服务即可完成升级。

升级到v2.1.201113

  1. 在终端中,进入您的discuz 的主目录并运行以下命令。
  1. php disco migrate --force
  2. php disco upgrade:split-permissions
  3. php disco site:switch
  1. 修改您的 Nginx 配置文件nginx.confindex 配置项,修改为以下参数。
  1. index index.php index.html;
  1. 重启 Nignx 服务即可完成升级。

升级到v2.1.201029

  1. 在终端中,进入您的 discuz 的主目录并运行以下命令:
  1. php disco migrate --force
  2. php disco upgrade:notice
  1. 修改网站主目录下的config.php 配置文件, 查找字段'providers' =>的配置修改为以下内容:
  1. 'providers' => [
  2. App\Formatter\FormatterServiceProvider::class,
  3. App\Passport\Oauth2ServiceProvider::class,
  4. App\Providers\AppServiceProvider::class,
  5. App\Providers\AttachmentServiceProvider::class,
  6. App\Providers\CategoryServiceProvider::class,
  7. App\Providers\EventServiceProvider::class,
  8. App\Providers\OrderServiceProvider::class,
  9. App\Providers\PostServiceProvider::class,
  10. App\Providers\SettingsServiceProvider::class,
  11. App\Providers\ThreadServiceProvider::class,
  12. App\Providers\UserServiceProvider::class,
  13. App\Providers\DialogMessageServiceProvider::class,
  14. App\Providers\QuestionServiceProvider::class,
  15. ],
  1. 重启 Nignx 服务即可完成升级。

升级到v2.0.201001、v1.0.200911、v1.0.200821、v1.0.200806、v1.0.200723、v1.0.200715、v1.0.200707、v1.0.200705、v0.5.200522、v0.5.200424

  1. 在终端中,进入您的 discuz 的主目录并运行以下命令:
  1. php disco migrate --force
  1. 重启 Nignx 服务即可完成升级。

升级到v1.0.200710

1.需配置PHP,启用exif 扩展。

  1. 在终端中,进入您的discuz 的主目录并运行以下命令:
  1. php disco migrate --force
  1. 重启 Nignx 服务即可完成升级。

升级到v1.0.200703

  1. 修改 Web 服务配置,修改内容请查看:Ngnix服务
  2. 在终端中,进入您的discuz 的主目录并运行以下命令:
  1. php disco migrate --force
  2. php disco upgrade:category-permission
  3. php disco upgrade:videoSize
  4. php disco upgrade:notice
  1. 修改网站主目录下的config.php 配置文件,将字段'providers' => 的配置项修改为以下内容:
  1. 'providers' => [
  2. App\Formatter\FormatterServiceProvider::class,
  3. App\Passport\Oauth2ServiceProvider::class,
  4. App\Providers\AppServiceProvider::class,
  5. App\Providers\AttachmentServiceProvider::class,
  6. App\Providers\CategoryServiceProvider::class,
  7. App\Providers\EventServiceProvider::class,
  8. App\Providers\OrderServiceProvider::class,
  9. App\Providers\PostServiceProvider::class,
  10. App\Providers\SettingsServiceProvider::class,
  11. App\Providers\ThreadServiceProvider::class,
  12. App\Providers\UserServiceProvider::class,
  13. App\Providers\DialogMessageServiceProvider::class,
  14. ],
  1. 重启 Nignx 服务即可完成升级。

升级到v0.5.200508

  1. 在终端中,进入您的discuz 的主目录并运行以下命令:
  1. php disco migrate --force
  1. 重启 Nignx 服务即可完成升级。

如果运行以上脚本时出现错误,请下载此文件 (opens new window),替换discuz 主目录下的database/migrations 目录下的同名文件,然后再次执行php disco migrate --force.

升级到v0.5.200410

  1. 附件图片统一接入对象存储服务后,需要重新配置”后台-全局-腾讯云设置-对象存储“中的“访问域名”。访问域名获取方式为:“腾讯云-对象存储-存储桶列表-配置管理-基本配置”中的“访问域名”(详见使用手册 (opens new window)“2.2.7.6对象存储”部分说明)。
  2. 修改网站主目录下的config.php 配置文件,将字段attachment 修改为以下配置:
  1. 'attachment' => [

修改为:

  1. 'attachment_cos' => [

并在此配置之前加入以下配置:

  1. 'attachment' => [
  2. 'driver' => 'local',
  3. 'root' => storage_path('app'),
  4. 'url' => 'attachment'
  5. ],

最终配置如下所示:

  1. 'attachment' => [
  2. 'driver' => 'local',
  3. 'root' => storage_path('app'),
  4. 'url' => 'attachment'
  5. ],
  6. 'attachment_cos' => [
  7. 'driver' => 'cos',
  8. 'root' => storage_path('app/public/attachment'),
  9. 'url' => 'attachment'
  10. ],
  1. 重启 Nignx 服务即可完成升级。

升级到v0.4.200331

按 v0.4.200331 升级的要求完成数据库升级和配置文件修改即可完成升级。

从任意版本升级到 v0.4.200331

  1. 在终端中,进入您的discuz 的主目录并运行以下命令:
  1. php disco migrate --force
  1. 修改网站主目录下的config.php 配置文件,在attachment字段之前,加入以下配置:
  1. 'avatar_cos' => [
  2. 'driver' => 'cos',
  3. 'root' => storage_path('app/public/avatars'),
  4. 'url' => 'avatar',
  5. 'visibility' => 'public',
  6. ],

从任意版本升级到 v0.4.200327

  1. 需要在完成以上步骤后,在终端中,进入您的discuz 的主目录并运行以下命令:、
  1. php disco migrate --force
  1. 重启 Nignx 服务即可完成升级。