安装环境检测不通过
报错现象
安装杰奇CMS时,系统提示“PHP版本过低”“MySQL未开启”“GD库缺失”等红色警告,无法进入下一步安装流程。
原因分析
90%的安装环境检测失败源于服务器基础环境配置不足,常见于新人租用低配虚拟主机或未正确安装PHP扩展组件。
杰奇CMS应急响应,运维老手的七步排查法
解决步骤
- 登录服务器SSH终端或宝塔面板,执行
php -v确认PHP版本(杰奇CMS要求PHP 5.6-7.2,推荐7.0) - 检查PHP扩展:
php -m | grep -E 'mysqli|gd|curl|mbstring',缺失则安装:
yum install php-mysqli php-gd php-curl php-mbstring -y
若是宝塔面板,直接进软件商店勾选对应扩展并重启PHP - 确认MySQL版本:
mysql --version,要求MySQL 5.5及以上,若版本太低需联系服务器商升级 - 临时关闭SELinux:
setenforce 0,永久关闭则编辑/etc/selinux/config改为SELINUX=disabled - 重新访问安装页面,按F5刷新,若依然报错,检查服务器防火墙是否放行3306端口
第二章:后台登录异常
报错现象
访问 /admin 后台地址,输入正确账号密码后无限跳转回登录页,或者直接显示“登录失败,请重试”。
原因分析
这是典型的Session或Cookie冲突,常见于更换服务器IP、修改过config文件、或者浏览器缓存异常。
解决步骤
- 清除浏览器Cookie:以Chrome为例,按F12 -> Application -> Storage -> Clear site data
- 清空杰奇CMS Session缓存:进入服务器杰奇根目录,删除
runtime/session/文件夹下所有文件 - 检查
/config/config_global.php文件,确认$_config['cookie']['cookiepre']的值未被修改,若被改回原值 - 检查数据库
pre_common_session表是否存在,若不存在执行修复:
CREATE TABLE IF NOT EXISTS pre_common_session (sid varchar(255)...省略完整表结构) - 重启PHP-FPM:
systemctl restart php-fpm或宝塔面板中重启PHP服务 - 若以上无效,在数据库执行
DELETE FROM pre_common_member WHERE username='你的管理员账号',然后重新注册一个管理员账号
第三章:数据库连接失败
报错现象
网站首页或任意页面提示“无法连接数据库”“建立数据库连接时出错”,或者具体报错 MySQL server has gone away。
原因分析
数据库服务宕机、配置文件密码错误、连接数达到上限是最常见的三大元凶。
解决步骤
- 检查MySQL服务状态:
systemctl status mysqld
若未运行:systemctl restart mysqld - 测试配置文件连接:用记事本打开
/config/config_global.php,复制dbhost、dbuser、dbpw、dbname这四项
在SSH中执行:mysql -h dbhost -u dbuser -p dbpw -D dbname
若连接失败,则密码错误或账号被锁定,执行:ALTER USER 'dbuser'@'localhost' IDENTIFIED BY '新密码'; FLUSH PRIVILEGES; - 调整连接数限制:编辑
/etc/my.cnf,添加或修改:
max_connections = 500
wait_timeout = 600
然后重启MySQL - 检查数据库表是否损坏:
mysqlcheck -o -h dbhost -u dbuser -p dbpw 数据库名
损坏则执行:mysqlcheck -r -h dbhost -u dbuser -p dbpw 数据库名 - 查看磁盘空间:
df -h,若根目录使用率超过90%,会引发MySQL写入失败
第四章:章节内容无法读取
报错现象
点击小说章节链接,页面正常但内容区空白,或者显示“内容加载中”但始终不加载。
原因分析
通常是由于章节数据表索引损坏、章节内容存储路径被修改、或者TXT文件权限异常。
解决步骤
- 检查章节内容目录权限:
ls -la /data/attachment/book/
确保目录权限为755,内部文件为644,执行:
find /data/attachment/book/ -type d -exec chmod 755 {} \; && find /data/attachment/book/ -type f -exec chmod 644 {} \; - 修复章节表索引:登录phpMyAdmin,选中数据库,点击“检查表”,对
pre_book_chapter和pre_book_content执行“优化表” - 检查配置文件中的存储路径:打开
/config/config_global.php,确认$_config['book']['content_path']指向正确目录 - 若只针对单本书,执行数据库更新:
UPDATE pre_book SET status=1 WHERE id=问题书籍ID
然后进后台“书籍管理”重新“更新章节” - 查看PHP错误日志:
tail -100 /var/log/php-fpm/www-error.log
若日志显示file_get_contents failed,手动检查该章节对应的TXT文件是否存在且大于0字节
第五章:页面空白或乱码
报错现象
首页或列表页完全空白(白页),或者出现“锟斤拷”“口口”等乱码字符。
原因分析
空白页99%是PHP语法错误或内存不足,乱码则是编码设置不一致。
解决步骤
- 开启PHP错误显示:编辑
/config/config_global.php,找到$_config['debug']=0改为$_config['debug']=1,顶部添加:
ini_set('display_errors', 1); error_reporting(E_ALL);
刷新页面即可看到具体报错信息 - 常见空白解决方案:
- 如果是
Parse error: syntax error,检查最近修改的文件,恢复备份 - 如果是
Fatal error: Allowed memory size of...,在config_global.php添加:
ini_set('memory_limit', '256M');
- 如果是
- 乱码修复:
检查所有页面<meta charset="utf-8">是否存在
用文本编辑器(推荐Notepad++)打开/template/default/header.htm,确认文件编码为UTF-8无BOM(点击“编码”菜单->以UTF-8无BOM格式编码)
如果数据库查询乱码,在数据库执行:
ALTER DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE pre_book CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
逐一修改所有表
第六章:伪静态规则不生效
报错现象
设置好伪静态后,所有动态URL(如?id=123)变成404错误,或者依然显示动态URL。
原因分析
.htaccess文件错误、Apache未开启Rewrite模块、Nginx配置缺少规则。
解决步骤
- 检查Apache Rewrite模块:
httpd -M | grep rewrite,若无输出则:a2enmod rewrite && systemctl restart httpd - Nginx用户操作:
编辑站点配置文件(宝塔面板在“网站设置”->“伪静态”中填写):if (!-e $request_filename){ rewrite ^/(.*)$ /index.php?$1 last; }nginx -s reload - 确保
.htaccess文件存在且可读:
进入杰奇根目录,用ls -la查看,若不存在则手动创建,内容为:<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> - 检查config文件伪静态设置:
登录后台->系统设置->基本设置,确认“启用伪静态”为“是”,然后清空缓存 - 极个别情况需检查
include/common.inc.php中$_SERVER['PHP_SELF']是否被篡改,比对原版文件修复
第七章:采集模块报错
报错现象
手动或定时采集书籍时,进度条卡住不动,或者提示“采集失败:无法获取内容”“请求超时”。
原因分析
目标网站改版、网络防火墙拦截、PHP执行时间过短、采集规则过期。
解决步骤
- 测试目标网站连通性:
在SSH执行curl -I https://source-website.com(替换为源站地址)
若返回403或连接超时,更换采集源或联系目标站管理员 - 调整PHP执行时间:
在config_global.php末尾添加:
ini_set('max_execution_time', 1800);
ini_set('set_time_limit', 0); - 检查采集目录权限:
chmod -R 755 /data/cache/collect/
确保PHP用户(www或nobody)有写入权限 - 更新采集规则:
登录后台->采集管理,点击对应规则的“编辑”,检查字段映射是否正确
常见错误:章节ID字段名称改变,将chapter_id改为id即可 - 降低并发请求数:
打开/admin/collect.class.php,找到CURLOPT_TIMEOUT => 30改为60,并修改max_thread为3 - 查看采集日志:
打开/data/cache/collect/log.txt(若无则手动创建并给777权限)
根据日志中具体的HTTP Code判断:200表示成功,404表示地址失效,500表示源站故障
应急锦囊
以上七类问题覆盖杰奇CMS日常运维的95%故障,建议将 config_global.php 和数据库每日备份,遇到无从下手的故障,三步走:1. 打开PHP错误显示;2. 查看 runtime/log/ 下的错误日志;3. 去官方论坛搜索 故障代码+杰奇,及时更新插件和安全补丁,服务器尽量使用Linux+Apache组合,稳定性优于Windows+IIS。



发表评论