2025-10-19 12:26:01 +08:00
|
|
|
|
# GeneAgro CMS 使用说明(基于 PbootCMS 3.2.5)
|
|
|
|
|
|
|
|
|
|
|
|
项目简介
|
|
|
|
|
|
- 本项目为 GeneAgro CMS,基于 PbootCMS(核心版本 3.2.5,release 20230421,revise 4)。
|
|
|
|
|
|
- 适用于企业官网、资讯展示与接口输出,包含前台、后台与 API 三部分。
|
|
|
|
|
|
|
|
|
|
|
|
技术栈与主要组件
|
|
|
|
|
|
- 后端:PHP 7.x(建议 7.1–7.4),MySQL(mysqli 驱动)。
|
|
|
|
|
|
- 前端:Bootstrap、jQuery(见 template/default 目录)。
|
|
|
|
|
|
- 其它:可选 Memcache(缓存与会话),日志支持数据库与文本两种。
|
|
|
|
|
|
|
|
|
|
|
|
环境要求与依赖
|
|
|
|
|
|
- PHP 版本:代码中强制校验 7.0+(Check::checkPHP)。不建议在 PHP 8.0 上运行。
|
|
|
|
|
|
- 必需扩展:gd、mbstring、curl;数据库驱动:mysqli;可选扩展:memcache(用于缓存/会话)。
|
|
|
|
|
|
- Web 服务器:需开启伪静态/URL 重写(rewrite 目录提供 Nginx/Apache/IIS 参考)。
|
|
|
|
|
|
- 时区与编码:默认设置为 Asia/Shanghai,输出 UTF-8。
|
|
|
|
|
|
- Composer:仓库已包含 vendor。若 vendor 缺失,可执行 composer install 以补齐依赖。
|
|
|
|
|
|
|
|
|
|
|
|
入口与模块职责
|
|
|
|
|
|
- 前台入口:index.php(网站首页与内容展示)。
|
|
|
|
|
|
- 后台入口:iotadmin.php(系统管理后台)。
|
|
|
|
|
|
- API 入口:api.php(接口输出,含认证校验)。
|
|
|
|
|
|
- 路由配置:
|
|
|
|
|
|
- apps/common/route.php:定义系统内置的路由分发(admin 系统/内容/会员,前台 sitemap,API list/content/about/search 等)。
|
|
|
|
|
|
- config/route.php:可进行项目级路由扩展或覆盖。
|
|
|
|
|
|
|
|
|
|
|
|
快速开始
|
|
|
|
|
|
1) 部署代码到 Web 根目录(确保 PHP 与扩展满足要求)。
|
|
|
|
|
|
2) 配置数据库连接:编辑 config/database.php(type=\"mysqli\",host/user/passwd/port/dbname)。
|
|
|
|
|
|
3) 配置站点与系统参数:编辑 config/config.php(或通过后台配置页)。
|
|
|
|
|
|
4) 配置伪静态/重写:参考 rewrite/.htaccess、nginx.txt、web.config。
|
|
|
|
|
|
5) 访问后台:浏览器打开 http(s)://<域名或IP>/iotadmin.php,首次登录后完善站点信息。
|
|
|
|
|
|
6) 前台访问:浏览器打开 http(s)://<域名或IP>/。
|
|
|
|
|
|
7) API 配置与使用:在后台“系统配置”页开启 WebAPI 并设置认证参数(详见下文“API 认证与示例”)。
|
|
|
|
|
|
|
|
|
|
|
|
常用配置说明(核心项)
|
|
|
|
|
|
- WebAPI(后台系统配置页)
|
|
|
|
|
|
- api_open:开启/关闭接口能力。
|
|
|
|
|
|
- api_auth:开启/关闭接口签名认证(建议开启)。
|
|
|
|
|
|
- api_appid:接口用户名(调用方标识)。
|
|
|
|
|
|
- api_secret:接口密钥(调用方密钥)。
|
|
|
|
|
|
- 日志
|
|
|
|
|
|
- 记录方式:core/convention.php 中 log_record_type,可配置为 \"db\" 或 \"text\"。
|
|
|
|
|
|
- 数据库日志:写入 ay_syslog 表(字段含 level、event、ip、os、bs、user、time)。
|
|
|
|
|
|
- 文本日志:写至 log/ 目录按日归档(YYYYMMDD.log)。
|
|
|
|
|
|
- 会话与缓存
|
|
|
|
|
|
- 会话存储:默认文件;如需 Memcache,请在 core/convention.php 配置 session.handler=\"memcache\" 并正确设置地址。
|
|
|
|
|
|
- 缓存:cache.handler 可选 \"memcache\",需安装 PHP memcache 扩展。
|
|
|
|
|
|
- 上传与水印
|
|
|
|
|
|
- 上传格式与尺寸:在 core/convention.php 中 upload.* 与 ico.* 配置。
|
|
|
|
|
|
- 水印:可在后台配置中开启/设置水印参数。
|
|
|
|
|
|
- 模板与主题
|
|
|
|
|
|
- 模板目录:template/default;可通过 setTheme/assign 方法进行变量注入与主题切换。
|
|
|
|
|
|
|
|
|
|
|
|
API 认证与示例
|
|
|
|
|
|
- 开启 api_open 后,若 api_auth=1,则每次请求必须带上时间戳与签名。
|
|
|
|
|
|
- 签名生成:sign = md5( md5( api_appid + api_secret + timestamp ) )。
|
|
|
|
|
|
- 时间戳有效期:15 秒内有效,过期拒绝。
|
|
|
|
|
|
- 示例(GET):/api/list?appid=YOUR_APPID×tamp=UNIX_TS&sign=YOUR_SIGN
|
|
|
|
|
|
- 主要接口(apps/common/route.php):list、content、about、search 等。
|
|
|
|
|
|
|
|
|
|
|
|
目录结构速览
|
|
|
|
|
|
- apps/admin:后台控制器、模型与视图。
|
|
|
|
|
|
- apps/home:前台控制器与模型。
|
|
|
|
|
|
- apps/api:接口层(可扩展)。
|
|
|
|
|
|
- apps/common:公共控制器与路由、版本信息。
|
|
|
|
|
|
- core/basic:核心基础类(Controller/Model/Db/Cache/Log 等)。
|
|
|
|
|
|
- core/function:常用函数库(helper/handle/file)。
|
|
|
|
|
|
- core/log:日志实现(数据库与文本)。
|
|
|
|
|
|
- config:项目配置(config.php、database.php、route.php)。
|
|
|
|
|
|
- rewrite:不同服务器的伪静态规则示例。
|
|
|
|
|
|
- template/default:前端模板与静态资源。
|
|
|
|
|
|
|
|
|
|
|
|
部署与运维建议
|
|
|
|
|
|
- 开启伪静态:根据服务器类型使用 rewrite 目录对应示例。
|
|
|
|
|
|
- 生产模式关闭调试:在 core/convention.php 中设置 debug=false。
|
|
|
|
|
|
- 数据库备份:static/backup/sql 目录可用于备份脚本/数据。
|
|
|
|
|
|
- 日志与监控:建议使用数据库日志并对 ay_syslog 做索引与归档。
|
|
|
|
|
|
|
|
|
|
|
|
常见问题
|
|
|
|
|
|
- 访问出现 404:检查伪静态是否生效,确认入口文件路径正确。
|
|
|
|
|
|
- API 调用失败(签名错误或超时):核对 appid/secret 与签名算法,确保服务器与调用方时间同步。
|
|
|
|
|
|
- 图片上传失败:检查 upload.format 与尺寸限制,确认 GD 扩展已启用。
|
|
|
|
|
|
- 登录或会话异常:若使用 Memcache,确认扩展与地址配置正确;否则使用默认文件存储。
|
|
|
|
|
|
|
|
|
|
|
|
许可协议
|
|
|
|
|
|
- 本项目采用 Apache License 2.0。详见仓库 LICENSE 文件。
|
|
|
|
|
|
|
|
|
|
|
|
版本信息
|
|
|
|
|
|
- Core/App 版本:apps/common/version.php 中 app_version=3.2.5,release_time=20230421,revise_version=4。
|
|
|
|
|
|
|
|
|
|
|
|
致谢
|
|
|
|
|
|
- 基于 PbootCMS 的二次开发与定制改造,感谢原项目与社区贡献。
|