盛世梧桐
2022-04-07
1285
精华

DiscuzQ 二开教程(7)——二次开发版本部署文档(会员免费)

源码:https://gitee.com/milanjasper/discuz-q-v3.git
Discuz! Q 原来开源主仓库共有4个,若要 fork 仓库进行手动部署,则需要组合四个仓库的代码。而且这种安装模式不适合没有技术基础的童鞋,也不适合谋求快速开发的同学,毕竟学习成本在这里。
为了减轻各位技术大佬的工作量,将4个仓库的代码进行了组合,保证开箱即用。开发语言:PHP+Nodejs+Mysql

一、第一步先检查工具

要用到的工具如下:

1、git (git 请使用最新版本)

没有安装过的,请参考下面安装教程
https://www.jianshu.com/p/1dd2ba0837a6

3、nodejs (node 选择12.22.2 ,npm 6.14.0),npm 要设置国内镜像,不然有可能会卡住

npm config set registry https://registry.npm.taobao.org

4、phpStudy 也叫小皮(本地的php环境,推荐php版本7.3,官方要求是7.2)

在本次二次开发部署中使用的phpStudy 中的wamp模式,用的是apache,没有用nginx

5、集成开发工具用的PhpStorm(PHP) + HBuilder(小程序+web+admin前端) +Navicat(数据库)

没有安装以上工具的,先安装工具,当然你如果安装了其他对应的,也可以。

6、另外很重要的事情,请搞一个腾讯云的账号,说白了,如果你不打算使用腾讯云,其实可以不用DiscuzQ的。
腾讯云:https://cloud.tencent.com/

二、下载代码和数据库文件

git clone https://gitee.com/milanjasper/discuz-q-v3.git dzq

三、安装:

1、先用小皮建一个网站,指定一个域名比如,www.discuzq.me

2、设置根目录 为仓库内的 dzq/dzq-dev/public目录,点击确认。
这样一个www.discuzq.me,根目录是dzq/dzq-dev/public目录的网站就做好了.

注意:如果.htaccess文件变成了0KB,这个事情是小皮干的,再重新下载仓库中dzq/dzq-dev/public下的.htaccess。

3、安装数据库文件:
数据库文件位置:dzq/dzq-dev/discuzq_db.sql

用小皮建一个新的数据库,比如:
数据库名称为:discuzq_db
用户名称为:discuzq
密码为:123456

然后执行discuzq_db.sql文件,导表进去即可,最好用Navicat工具导表,不然可能会报错。

4、配置数据库路径:

打开数据库配置文件: dzq/dzq-dev/config/config.php
将数据库地址,用户名,改成你刚才建的数据库的名称,用户名和密码,然后保存。

5、配置cacert.pem证书(证书在附件cacert.zip,请自行下载,然后解压,并把cacert.pem放在指定位置比如如下配置)

修改php.ini,修改其中的以下两行内容,并去掉前面的;符号。如下所示:
curl.cainfo=c:\cacert.pem
openssl.cafile=c:\cacert.pem
注意:如果不配置该证书会报curl 60的错误,所以一定要配置。如果有这个问题,一定是证书缺失了。

attachmentId-260

6、php配置 fileinfo 和 exif 扩展,如果用小皮可以在小皮直接打开。

7、访问www.discuzq.me,本地安装成功。

8、访问后台 www.discuzq.me/admin
账号:admin
密码:123456

9、完成

10、配置文件上传的软链接
为上传文件夹创建软链接不然会造成上传的图片不显示
windows配置如下:
(1)cd dzq-dev/public
(2)删除 storage目录
(3)mklink /J storage D:\phpstudy_pro\WWW\discuz-q-v3\dzq-dev\storage\app\public\

linux配置如下:
(1)cd dzq-dev/public
(2)删除 storage目录
(3)
ln -s /www/wwwroot/dzq-test/discuz-q-v3/dzq-dev/storage/app/public /www/wwwroot/dzq-test/discuz-q-v3/dzq-dev/public/storage

部分二开效果截图:

5条评论
评论从新到旧
0/5000
微信用户9Iqub9
如果想修改前端是不是得重新打包,PHP是作为一个纯后端?
2023-11-07
回复
查看之前1条回复...
微信用户9Iqub9
@
种花家兔子
<p>然后我想改下web端,后端php的端口是8081,web前端是8082(已经在package.json修改),但是run dev 之后,前端发的请求会把web\dzq.config.yaml中host配置直接追加到请求后面,比如:host配置的是www.discuzq.me,但是请求是</p>http://127.0.0.1:8082/www.discuzq.me/api/v3/forum
2023-11-08
回复
微信用户9Iqub9
部署起来了~请问下 public是打包出来的的吗?如果需要修改代码在哪个位置改:tiaopi:
2023-11-06
回复
查看之前1条回复...
微信用户9Iqub9
@
喔,直接改就行了,PHP有点厉害,哈哈哈哈
2023-11-06
回复
豌豆八角
楼主你好, 我这边搭建完环境,访问的时候提示如图,这个是什么问题呢
2022-09-30
回复
查看之前1条回复...
豌豆八角
@
吃棒冰
看到不是0kb
2022-10-10
回复
消逝
<p>安装后首页访问报错:</p>Discuz \ Http \ Exception \ RouteNotFoundException (404)
2022-07-26
回复
查看之前1条回复...
吃棒冰
@
盛世梧桐
已经好了谢谢大佬
2022-10-02
回复
炤炤
请问这个版本可以用宝塔装么,如果可以的话该怎么弄哎
2022-06-15
赞 1
回复
查看之前1条回复...
种花家兔子
@
可以用宝塔装
2022-06-17
赞 1
回复
没有更多内容了