# GeneAgro CMS 部署与重写规则指南 环境准备 - PHP:7.0 及以上(建议 7.1–7.4),启用 gd、mbstring、curl、mysqli 扩展。 - Web 服务器:Nginx/Apache/IIS 均可,需开启伪静态/URL 重写。 - 时区与编码:建议在 php.ini 中设置 date.timezone=Asia/Shanghai;确保输出编码为 UTF-8。 目录权限 - 需写入权限:runtime、log、static/upload、data 等目录。 - 生产环境最小化权限:仅赋予必要写入目录权限,其他目录只读。 重写规则示例 - Nginx(参考 rewrite/nginx.txt) - 典型配置: - location / { try_files $uri $uri/ /index.php?$args; } - 后台入口保持直达:/iotadmin.php。 - Apache(参考 rewrite/.htaccess) - 典型配置: - RewriteEngine On - RewriteCond %{REQUEST_FILENAME} !-f - RewriteCond %{REQUEST_FILENAME} !-d - RewriteRule . index.php [L] - IIS(参考 rewrite/web.config) - 使用 URL Rewrite 组件导入 web.config 配置。 应用入口与路由 - 前台入口:index.php。 - 后台入口:iotadmin.php。 - API 入口:api.php。 - 路由:apps/common/route.php(系统内置),config/route.php(项目覆盖与扩展)。 部署流程建议 1) 上传代码至站点目录,确认 PHP 版本与扩展; 2) 配置数据库(config/database.php)与站点参数(config/config.php); 3) 设置伪静态规则(参考 rewrite 目录); 4) 访问后台 iotadmin.php 完成站点与 API 配置; 5) 验证前台与 API 可用性; 6) 关闭调试模式(core/convention.php 中 debug=false),开启必要的日志与监控。 安全加固 - HTTPS:建议强制 HTTPS(尤其是后台与 API 访问)。 - 会话安全:启用仅站点路径会话(session_in_sitepath=true),合理设置 Cookie 参数(HttpOnly、Secure)。 - 访问控制:按需配置 access_rule.*(限制特定浏览器/操作系统)。 - 文件上传:限制格式与尺寸,开启水印(如有需求),对上传目录做执行权限隔离(不允许脚本执行)。 性能与运维 - 缓存:根据业务开启 Memcache(cache.handler=memcache)。 - 日志:生产环境建议使用数据库日志,并按周期归档;或文本日志按日切割并外采。 - 备份:数据库定时备份,日志与上传文件定期打包与远端归档。