该源码是一款功能全面,用户交互良好的程序,兼容安卓苹果端,H5网页,微信小程序等。同时是集成数据本地缓存,邮箱验证,在线投稿,(内置Mardown编辑器),社会化登录,点赞打赏,积分商城付费阅读,VIP会员等一系列功能的自媒体博客资讯APP。

基于Typoche程序数据库开发,后端接口采用springboot框架,已经集成了COS和OSS对象存储,token登录验证,邮箱验证,redis数据缓存,微信支付宝充值,社会化登陆接口等,当然也可以自行对接其它的接口。

APP是一款基于uniapp技术,ColorUI框架开发的Typecho客户端应用,目前已经兼容安卓苹果APP,H5网页,和微信QQ小程序

基础功能

  • 1.基于标签,分类,搜索词,文章字段,随机为一体的数据查询调用
  • 2.集成了基于邮箱验证的登录注册,邮箱修改,拥有VIP会员体系。
  • 3.集成了在线评论,在线投稿,编辑文章,发布商品等内容操作模块
  • 4.集成了用户签到,打赏,收藏,点赞等基本交互模块,具备完善的收费功能流程。
  • 5.整合积分商城,付费阅读,在线充值(微信,支付宝,卡密充值),提现审核。
  • 6.本地列表数据缓存,更优秀的加载体验。
  • 7.兼容安卓苹果APP,H5网页,微信小程序,QQ小程序,并理论兼容所有小程序平台,更多支持正在开发…
  • 8.拥有管理员界面,实现了权限分级,只需要在APP内就可以管理整个站点。
  • 9.独有付费广告模块:文章推流广告,横幅广告,启动图广告等(非官方广告联盟)。
  • 10.APP内即可后台管理,简约快捷,随手操作。

安装步骤

1.编辑utils/api.js,设置接口地址,网站地址,群地址。同时设置各种数据调用的id和mid。

2.编辑manifest.json设置社会化登录,微信支付,外部启动等。

3.对象存储上传,远程FTP上传及本地上传的切换,请修改utils/api.js中的upload方法

后端Api一键安装&更新脚本

打包教程可参考:uniapp从基本配置到打包发布详细流程

IOS免签约打包可参考:苹果端ios免签约打包教程,详细说明

后端Api一键安装&更新脚本

第一步:要求

Typecho(1.0 or 1.1 or 1.2):推荐1.1版本,Typecho是一款国内有名的个人博客开源程序,拥有丰富的模板和插件生态。
Redis(5.0-7.0):推荐6.0,Redis是现在最受欢迎的NoSQL数据库之一。
Mysql(5.5-5.7):推荐5.7

首先,要确定服务器上安装了typecho,因为RuleApi本质上是typecho的扩展,所以连接的也是typecho的数据库。然后,安装一个redis,这个宝塔都是自带的,随便就安装了,不需要我多说。
最后,执行如下指令,安装screen.

yum install screen -y

全选代码

复制

screen是一款进程保护程序,可以让你就算退出了终端,指令也会继续运行。安装过程会让你输入y什么的,就直接输入y再Enter确定,如果没有也没关系。

第二步:执行安装脚本

首先创建一个进程保护窗口,再进入opt文件夹

screen -S api
cd /opt

全选代码

复制

然后执行RuleApi一键安装脚本,暂时只兼容Centos6以上版本,最好7(测试阶段)

主节点:

wget https://www.ruletree.club/api/ruleapi.sh && sh ruleapi.sh install

全选代码

复制

安装完成后,将服务器/opt文件夹中的apiResult.php文件,剪切到typecho网站的根目录

第三步:后续说明

脚本还提供其它管理选项,分别是如下:

注意,项目启动之后,运行日志将输出到/opt目录下out.txt文件,如果启动后出现异常或者无法访问,可以打开这个文件查看具体的原因。/opt/application.properties为主要的配置文件,如果出现安装脚本配置错误,项目无法正常启动,就可以在这个文件进行修改。

启动RuleAPi

sh /opt/ruleapi.sh start

全选代码

复制

停止RuleAPi

sh /opt/ruleapi.sh stop

全选代码

复制

重启RuleAPi

sh /opt/ruleapi.sh restart

全选代码

复制

RuleApi更新

首先执行更新脚本(如果执行无效,点击下载最新版的sh,丢进/opt再试试执行):

sh /opt/ruleapi.sh update

该脚本会下载当前服务器最新版jar和最新版的脚本文件,并将新版的新版配置文件application.properties下载至/opt/upfile,更新过程并不会重启接口,请自己对照/opt/upfile中的配置文件,查看是否有新增项,然后修改/opt/application.properties,比对无误后,执行重启脚本:

sh /opt/ruleapi.sh restart

有时候更新会失败,比如我的服务器被攻击,或者更新包下载不下来(服务器配置不高,穷)。这个时候,可以去这个文章,直接下载最新版本的压缩包,首先停止接口运行,把jar上传到opt,然后对比最新版的application.properties修改自己的配置文件,再执行脚本重启生效。

同时,你还可以根据如下指令更新到内测版本。内测版本可能会增加新的功能与支持,但也可能存在未知bug。

sh /opt/ruleapi.sh updateBeta

开机自启和宕机自启

目前脚本已经添加了monitor监听方法,执行后将检测RuleAPI是否正常运行,如果未运行状态则执行启动命令。具体指令如下:

sh /opt/ruleapi.sh monitor

所以,只需要让这个命令几分钟执行一次,监听项目是否运行正常,未运行就开始运行,就可以实现开机自启和宕机自启,以宝塔面板为例,直接在计划任务中增加如下的任务即可,间隔可以3分钟到10分钟,这样开启或者宕机后几分钟内就会自行启动。

更多配置

因为脚本安装只是完成基础的安装,更多的设置需要编辑/opt/application.properties文件,里面就可以配置包括对象存储,数据库前缀,图片key,和其它更加详细的信息等,修改完成后,通过执行重启指令生效。

sh /opt/ruleapi.sh restart

如何访问RuleAPi?

宝塔里额外创建一个网站(二级域名,千万别和其它网站共用),网站类型为静态就好,然后找到伪静态设置,加入如下代码保存。

location ^~ / {
    add_header 'Access-Control-Allow-Origin' '*';
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE';
    add_header 'Access-Control-Allow-Credentials' 'true';
    add_header 'Access-Control-Allow-Headers' 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,X-Data-Type,X-Requested-With,X-Data-Type,X-Auth-Token';
    if ( $request_method = 'OPTIONS' ) { 
        return 200;
    }
     proxy_pass http://127.0.0.1:8080;
     proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
}

上述代码的用途是反向代理,并获取真实IP,且开始跨域。宝塔自带的反向代理功能比较复杂,所以省事的话,请采用上述的方法。其中127.0.0.1:8080就是你的内网接口地址,这里只需要改8080这个端口号(如果你定义了其它的话)

整个过程不要开启任何外网端口,切记!!!!

访问RuleApi主页面后,请点击这个选项,完成最终的安装。

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源