a9bcfce8d82ad033cc5048544c17b0bfa57343c3
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:可进行项目级路由扩展或覆盖。
快速开始
- 部署代码到 Web 根目录(确保 PHP 与扩展满足要求)。
- 配置数据库连接:编辑 config/database.php(type="mysqli",host/user/passwd/port/dbname)。
- 配置站点与系统参数:编辑 config/config.php(或通过后台配置页)。
- 配置伪静态/重写:参考 rewrite/.htaccess、nginx.txt、web.config。
- 访问后台:浏览器打开 http(s)://<域名或IP>/iotadmin.php,首次登录后完善站点信息。
- 前台访问:浏览器打开 http(s)://<域名或IP>/。
- 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 的二次开发与定制改造,感谢原项目与社区贡献。
Description
Languages
PHP
87.6%
HTML
6.3%
CSS
4.5%
SCSS
0.8%
Less
0.8%