本帖最后由 抄寫并背誦全文 于 2024-5-20 15:35 編輯
防手賤:先整個(gè)備份你的 dzq 項(xiàng)目文件夾,防止出問(wèn)題了之后數(shù)據(jù)無(wú)法還原 先說(shuō)一下我的二開流程我直接從服務(wù)器把所有代碼打包下載下來(lái),然后在本地創(chuàng)建的 git 倉(cāng)庫(kù) .gitignore 文件整個(gè)倉(cāng)庫(kù)拉下來(lái)之后,別忘了創(chuàng)建一個(gè).gitignore 文件: - # /framework
- /public
- /vendor
- /composer.lock
- /.idea
- /config/config.php
- /node_modules
- .php_cs.cache
- /public/s9e.js
- /public/storage
- /storage/install.lock
- /public/docs
- /public/api-docs
- /public/manual-h5
- /public/manual-admin
- /plugin/CustomIfram2
復(fù)制代碼
?/frame這個(gè)要注釋掉(不忽略),后邊我會(huì)告訴你干什么用 /public前端代碼,這里放的是產(chǎn)物,不是前端源碼,直接忽略 /vendor整個(gè) dzq 項(xiàng)目所需要的,已經(jīng)下載好的所有 composer 依賴,因?yàn)楹筮呍蹅兛梢宰约禾幚?composer 包了,所以這里直接忽略掉 /config/config.php配置文件,這里因?yàn)樾枰褂瞄_發(fā)版的數(shù)據(jù)庫(kù)連接地址,所以忽略 剩下的內(nèi)容也是直接忽略即可,我不再多解釋其他的目錄的作用了 修復(fù) composer.json最后一版 DZQ 已經(jīng)過(guò)去兩年了,大部分 composer 包已經(jīng)有了更新的版本,但是部分包可能不兼容目前的 DZQ3.0 后端,所以暫時(shí)先鎖定目前已有的包的版本 require 字段:直接改成我這樣既可 - "require": {
- "php": "^7.2.5",
- "ext-json": "*",
- "ext-pdo": "*",
- "discuz/core": "dev-3.0-dev",
- "doctrine/dbal": "2.13.2",
- "endroid/qr-code": "3.9.6",
- "ezyang/htmlpurifier": "v4.13.0",
- "league/omnipay": "v3.0.2",
- "lokielse/omnipay-wechatpay": "v3.0.11",
- "overtrue/wechat": "4.4.2",
- "qcloud/vod-sdk-v5": "v2.4.4",
- "qcloud_sts/qcloud-sts-sdk": "3.0.6",
- "s9e/text-formatter": "2.9.3",
- "zircote/swagger-php": "^3.2"
- },
復(fù)制代碼
?require-dev 字段改成這樣: - "require-dev": {
- "friendsofphp/php-cs-fixer": "v2.19.0",
- "symfony/var-dumper": "v4.4.26"
- },
復(fù)制代碼
?這樣改這兩個(gè)字段的作用,是直接硬鎖定 composer 包的版本 修復(fù) dzq 主框架(重要)- 在你的 dzq 后端的根目錄下,新建一個(gè)文件夾,叫做:framework
- 進(jìn)入你 dzq 后端根目錄下的 vendor 目錄,找到 discuz 文件夾,然后找到 core 文件夾。
- 把 core 文件夾里所有的文件,復(fù)制到 framework 文件夾下
- 進(jìn)入 framework 文件夾,找到 composer.json 文件
- 在 "description" 字段下,新加入一行:"version": "dev-3.0-dev",
- 保存,退出
開始正常使用 composer進(jìn)入你的 DZQ 根目錄,開啟 cmd 終端,然后輸入 composer install,如果生成了一個(gè)新的 composer.json.lock。則 composer 就可以正常使用了 |