## 4.基本配置
[TOC]
**林风社交论坛项目官网**:https://www.linfengtech.cn
备用官网:https://net.linfeng.tech
*****
林风社交论坛标准商业版项目由:
后台前端vue项目linfeng-community-vue、
后端java项目linfeng-community-backend、
用户端uniapp项目linfeng-community-uniapp、
数据库文件组成。sql文件、增量sql、数据库注释文档均在sql文件夹下。
```
注意:用户PC网页端是2025.4月推出的独立销售的新项目,采购该项目的客户启动PC网页端前端的教程参考“用户PC端”章节。
```
*****
### 一、后端linfeng-community-backend项目
使用数据库可视化工具navicat或者sqlyog等软件创建数据库

注意字符编码是:`utf8mb4`,然后导入数据库sql文件。
如果初次启动后端项目报错了,那就按照**文档中 “常见问题” 栏目 第13条**的要求执行对应SQL,清理quartz表数据。
**注意:**如果还是报错(这个报错基本是因为使用了Linux系统下的MySQL,会出现大小写问题,需要配置),再参考**文档中 “常见问题” 栏目 第3条**的要求配置数据库。
*****
首先,导入后端项目linfeng-community-backend到开发工具IDEA中
(前提条件请配置好:IDEA安装好,JDK环境安装好,Maven安装好,IDEA中设置好Maven路径和JDK路径,Lombok插件安装好)

如上图,选择导入,

如上图,找到项目文件夹然后导入IDEA,

如上图,打开项目后,点击File——Project Structure,选择jdk17(注意:V3.0.0起jdk版本为17,V1.25.0以及之前的版本请用jdk8)

如上图,点击File——Settings,配置你自己本地maven地址,完成后等待Maven依赖下载完成即可。
*****

如上图,linfeng-community-backend的application.yml中选择激活dev本地或prod线上配置。
本项目的基本配置信息都在后台管理系统的“应用配置---->配置中心”进行自定义配置。位置如下图所示,后续启动了后台前端项目linfeng-community-vue后,可以进行配置:

注意:像数据库和redis配置这些都还在yml中进行。如下图所示:

按照yml配置数据库名称端口和账号密码,本地测试环境配置application-dev.yml,生产环境配置application-prod.yml,测试环境配置application-test.yml。

redis配置项在这里(如上图),默认不用改动,密码为空就行。运行后端项目前一定要打开电脑本地的redis。

然后就可以启动后端项目啦(如上图)。请确保maven已经正常配置。
**注意注意**:运行后端api前务必启动redis和mysql哦~

启动后端项目linfeng-community-backend后控制台输出如上图内容就代表后端启动成功。

mvn clean和mvn install即可打成jar包,可运行jar就在targer文件夹目录下。
如果脱离IDEA,需要单独启动jar包,执行
```
java -jar linfeng-community-backend.jar --spring.profiles.active=dev
```
其中,linfeng-community-backend.jar你的jar包名称,dev(或者prod、test)是你选择的激活配置。
----------------------------------------------------------------------------
**注意注意:启动后端项目之前,最重要的事情是***一定要先启动redis服务,再启动后端服务*。否则后端无法启动,因为后端启动会初始化各种配置项至redis缓存中。
----------------------------------------------------------------------------
*****
### 二、移动端linfeng-community-uniapp项目
#### 1.基本配置
按如下图配置。找到utils/config.js配置api接口地址。如下图:

①配置`baseUrl`,这个就是你后端启动的地址,后端java项目电脑本机启动接口服务默认是8080端口,默认baseUrl不用改。如果后端端口改了,那这里也要改。
② 这个`domain`和`websocketUrl`不用动。
③这个`imgResource`是用于存储部分前端的图标等静态资源文件的,你需要配置成可访问的远程地址,这些资源文件在商业版压缩包里面(用户端静态资源&IM表情包\resource文件夹下)。默认用的官方演示地址,你上架软件前一定要改成自己的地址哦(如果是电脑本地测试不用着急改),我们会随时切换地址。
④这个`emojiUrl`是私聊表情包资源地址,其详情配置请参考章节“IM部署使用”部分。你如果只是本地运行测试,暂时不需要配置这个地方,等你需要测试私聊IM即时通讯的表情包模块,再配置这里。
(imgResource和emojiUrl可以放到服务器同一个站点根目录下,能访问到就行,随便放到服务器上还是云存储空间)。
⑤`wxMpAppId`是微信公众号的AppID,如果你不使用公众号H5端的话,就不用填。
⑥`wxh5Login`为是否使用微信公众号,如果你不使用填false,如果要使用公众号H5版本就填写true。这个参数会作用于公众号自动登录模块。
**注意1**:如上图中,分成本地环境配置和线上环境配置两份配置信息。如果本地运行就打开第5到第12行代码。如果线上运行就打开第15行到22行的代码。实际你需要配置的内容就是`baseUrl`、`emojiUrl`、`imgResource`、`wxMpAppId`和`wxh5Login`这些地方。
**注意2**:线上配置默认是部署了SSL证书的,所以配置以https和wss开头,还需要注意`websocketUrl`在本地配置和线上配置是不一样的,后缀有变动!
*****

如上图所示,修改成你的微信小程序appid(**如果你要用小程序版本就一定要改这里**!!)

如上图所示,需要使用H5端的话,H5端的腾讯地图key改成你自己的,不然H5端无法定位。
申请key的网址( https://lbs.qq.com/dev/console/application/mine )
具体设置如下图所示:

**特别注意**:如果你是新设置的key,一定要检查额度分配,不然无法使用的哦,如下图:

如果你使用安卓或ios,那么需要在高德地图或百度地图配置对应的key值,如下图所示

按照配置指南对第一个红框处进行填写配置。
注意:App端购买地图key的授权有点贵,如果预算有限,建议直接不要App端的发帖带定位功能,直接注释发帖页的选择定位功能入口(如下图所示,增加画红线的两行即可)。

另外,如果你使用安卓或ios,那么APP的微信支付的appid需要在上图的第二个红框处填写配置。APP的微信支付要去“微信开放平台”认证申请到这个appid,然后去“微信商户平台”申请开通。
**注意**:目前微信的规定是APP应用必须上架才可以申请开通APP端的微信支付。
#### 2.启动微信小程序
接下来,如果你是启动微信小程序:

按上图所示即可运行小程序,如果你是第一次运行uniapp项目到微信开发者工具,
需要去配置一下微信开发者工具的安全端口,不然无法唤起微信开发者工具(具体看博客示例参考 https://blog.csdn.net/lyx1838102537/article/details/122491185 )。
```
注意:根据微信小程序隐私协议设置的最新要求,你需要先去 “微信公众平台 ”上填写用户隐私协议设置。具体请查看 “常见问题” 章节第39条。设置完隐私协议并审核通过后才能调用微信小程序接口权限。
```
注意1:根据微信小程序的规定,微信公众平台上设置完**小程序隐私协议**才能够实现微信手机号登录!!!具体请查看 “常见问题” 章节第39条。
注意2:默认已经注释掉广告插件了,如果需要使用uni AD请打开广告注释并安装广告插件。
注意3:uniapp端运行到小程序以后不要着急微信登录,这时会报错“**openid解析失败**”,因为你的后台管理系统的“配置中心”还需要配置小程序appid和密钥。不然无法登录。
注意4:微信小程序账号不能是个人的账号,否则,在小程序手机号授权登录的时候,个人号是没有调用手机号接口权限的哦。v1.25.0版本开始支持微信小程序端设置openid一键登录,所以你可以选择后台管理系统的配置中心设置微信小程序端登录方式。
#### 3.启动H5端
如果你是启动H5端,按如下图方式启动:

注意:不需要执行什么命令。直接就能启动。
*****
#### 4.启动APP端
1.安装雷电模拟器或mumu模拟器并配置好环境(其他模拟器也可以,自己挑)参考博客:https://blog.csdn.net/DarlingYL/article/details/121343740
2.运行,如下图:


选择标准基座运行即可(测过没问题)。如果模拟器跑不出效果。这时你可以选择使用自定义基座运行,参考官方文档:https://uniapp.dcloud.net.cn/tutorial/run/run-app.html#customplayground

按照文档描述的,打包自定义运行基座后,HBuilder会自动将生成后的apk和ipa包存放在 项目目录/unpackage/debug目录下,文件名分别为`android_debug.apk`和`iOS_debug.ipa`。如上图所示,代表可以进行自定义基座打包了。
此时,你在HBuilderx进行修改代码保存后,模拟器会同步热更新页面效果。
*****
#### 5.关于流量主广告
注意:代码中默认已经注释掉广告插件代码了,如果你不需要这块可以直接忽略。

如上图所示,可以选择开启或关闭信息流广告。流量主广告在首页和帖子详情页有展示。
如何获取广告的adpid,请仔细阅读:https://ask.dcloud.net.cn/article/36769
申请会花几天时间才能通过审核。
申请地址:https://uniad.dcloud.net.cn/login
**注意**:如果你的小程序没有申请广告插件,请不要打开如下图这两处注释(默认打开的),打开的话是不能运行成功的。系统会提示你申请插件。不需要广告模块的话,这两块注释掉即可。
如果你第一次在HBuilderX运行uniapp项目到微信开发者工具上,会提醒你安装广告插件,然后会出现插件待审核的状态,导致项目无法运行到微信开发者工具,此时,就要把如下图的两行代码注释了。

**提醒**:广告有很多类型,比如插屏广告,信息流广告等。目前启动接入的是信息流广告。如果需要其他类型,自行对接(官方给的demo很详细,对接起来很简单)。
#### 6.关于手机验证码登录
```
注意:腾讯云短信和阿里云短信您可二选一。
```
下面介绍的是阿里云短信开通流程:
H5端和APP端使用的是手机号验证码登录,开通`阿里云短信`的地址:https://dysms.console.aliyun.com/overview
开通步骤:

按照系统提示先后逐一申请开通**签名**和**模板**。


如果出现审核几次都通不过的情况,请提交工单和阿里云审核员做沟通解释,一般都能通过的。
后台管理系统需要做配置:
需要注意,选择关闭选项的时候,用户端发送验证码会自动在用户端界面上返回。所以你在正式环境下需要选择开启选项。阿里云短信和腾讯云短信,二选一。
注意:如下图,阿里云短信的短信key和密钥就是阿里云的accesskey和密钥,和阿里云云存储的accesskey和密钥是同一个东西。

#### 7.微信公众号配置
首先,在`微信公众平台`开通一个服务号。开通后找到公众号的AppId和密钥。

如上图位置,先配置公众号的AppId和密钥。

如上图,用户端前端也需要配置公众号的AppID哦。

如上图,在微信公众平台配置:业务域名、JS接口安全域名、网页授权域名。这三个域名都填你H5端的域名。例如:h5.xxx.com
然后就是微信公众号支付绑定微信商户平台。参考:https://developers.weixin.qq.com/community/pay/article/doc/0004449a560590f759ed0cbf75d013
最后,请注意,如果你使用公众号H5的话,H5端的域名请记得配置SSL证书,也就是https访问。
### 三、后台管理端linfeng-community-vue项目
`
Tips:后台前端项目初始账号:admin 密码:123456
记住 记住 记住!
`
#### 1.基本配置
基本配置如下:
**node.js版本要求:大于16**才行。
推荐**nvm**管理工具管理node版本。如果你用的版本npm install有问题,那就用参考版本,保证没问题。
```
参考版本: node.js版本 v18.15.0 npm版本v9.5.0
```
如下图,在项目的**config/index.js**中配置后端接口即可,本地接口和线上环境接口都在这个文件中配置哦。

初次启动项目请在vue工程根目录下执行`npm install`安装依赖;
然后执行`npm run dev`即可在本地启动项目;
或者执行`npm run build`即可在打包出dist文件夹用于项目线上部署;
*****
**后台前端项目初始账号:admin 密码:123456**
*****
#### 2.配置中心
如下图,配置项统一在“配置中心”配置。

#### 3.文件的存储配置
**注意注意**:
```
V1.21.0版本开始,私聊IM部分强制本地存储。其他模块的图片视频文件新增minio存储方式(支持阿里云、七牛云、本地存储、minio存储四选一)。
```
```
V1.17.0版本开始,私聊IM部分强制本地存储。其他模块的图片视频文件既支持云存储,也支持本地存储(支持阿里云、七牛云、本地存储三选一)。
```
```
V1.16.0版本以及之前的用户,除了私聊IM部分,其他图片视频文件都是云存储方式存储。
私聊IM部分的文件视频图片是存储在服务器本地的,因为私聊内容属于用户私密内容。
```
项目的云存储的方式,配置如下图所示:在这里选择你的图片存储类型并进行配置。
关于如何配置参数:
七牛云存储的**具体配置**请查看`常见问题`章节的第37条。
阿里云存储的**具体配置**请查看`常见问题`章节的第38条。
本地存储的**具体配置**请方式请查看`常见问题`章节44条(v1.17.0新增)。
minio存储的**具体配置**请方式请查看`常见问题`章节49条(v1.21.0新增)。
如果你使用阿里云存储或本地存储或minio存储,那么需要设置视频贴封面,具体方法查看`常见问题`章节43条。

#### 4.邮箱验证码登录
如果需要邮箱验证码登录功能(如果不需要请跳过本节),需要在后端项目application.yml中配置参数,如下图所示:

这里的password参数是指 邮箱授权码,而不是你的qq密码。

**注意**:yml中一共有两处邮箱需要配置!一个是图A,一个如上图B的email.send处!(有用户反应配置不成功,其实就是漏了如上图B的email.send配置)
**如何找到图A中的配置参数?**
首先,我们需要打开QQ邮箱的SMTP服务,因为QQ邮箱对于一般的用户都是默认关闭SMTP服务的。
打开QQ邮箱,点击设置。点击帐户。
找到SMTP服务的选项,可以看到此处默认是关闭的,点击开启,然后腾讯会进行一些身份验证,身份验证通过以后,腾讯会给出一个用于使用SMTP的16位口令,此处这个口令就是yml要填写的password参数。

注意:你也可以通过更换yml配置,换成其他邮箱,如163邮箱、谷歌邮箱等。
*****
#### 5.关于微信支付
如果你在本地想测微信支付,支付回调部分是不行的,付完款会员状态或者余额并没有改变。部署线上后即可。
关于微信支付的基本配置,如下图所示:

注意:微信商户平台的商户密钥用`API V2`的。
注意:微信商户平台的商户密钥用`API V2`的。
注意:微信商户平台的商户密钥用`API V2`的。
如果APP端的支付,需要去“微信开放平台”申请APPID,微信开放平台初次认证要交费,并且如下图uniapp端mainfest.json配置这个ID才可以。

*****
#### 6.关于微信小程序端客服
微信小程序端可以直接在“微信公众平台”上绑定客服,具体设置如下图所示。

#### 7.关于百度智能云内容审核配置
登录百度云进入内容审核平台([百度内容审核平台](https://ai.baidu.com/censoring#/)),根据4步引导完成服务的开通和调用。
1、领取额度:首次注册平台会赠送一定的接口调用额度,在开发或者试运营阶段额度应该是足够的,个人认证和企业认证赠送的额度不一样,各位用户可根据自己的实际情况认证。

2:创建应用,内容审核平台用到三个配置项,分别是AppID,APIKey,SecretKey。应用创建完就自动生成。


3:创建策略,操作也非常简单,演示环境是直接按照系统推荐的策略勾选的,**这里要注意的是策略勾选的越多,收费就越贵,各位在配置策略的时候一定要注意成本,一些无关紧要的策略可以不用勾选,具体收费标准请参考百度内容审核的收费说明。**


后台配置百度平台的三个参数,同时我们提供了审核开关,关闭了之后就不会再调用内容审核接口。

