故障排查指南
Troubleshooting Guide
常见问题
1. 页面显示空白
可能原因:
- PHP 错误被隐藏
- 文件路径错误
- 权限问题
解决方法:
- 检查 PHP 错误日志
- 启用错误显示(开发环境):
``php
iniset('displayerrors', '1');
errorreporting(EALL);
``
- 检查文件权限
2. 缓存问题
症状: 修改内容后页面未更新
解决方法:
- 清除缓存目录:
_blog/src/cache/ - 如果使用 Redis,清除 Redis 缓存
- 检查缓存配置是否正确
3. Redis 连接失败
症状: 日志显示 Redis 连接错误
解决方法:
- 检查 Redis 服务是否运行
- 检查
REDISHOST</code> 和 <code>REDISPORT配置 - 检查防火墙设置
- 系统会自动回退到文件缓存
4. Markdown 文件无法解析
可能原因:
- 文件编码问题
- Front Matter 格式错误
- 文件路径包含特殊字符
解决方法:
- 确保文件使用 UTF-8 编码
- 检查 Front Matter 格式是否正确
- 检查文件路径是否安全
5. 标签页面显示错误
症状: tags.php 或 tag.php 报错
解决方法:
- 检查 Markdown 文件的 Front Matter 中 tags 格式是否正确
- 确保标签是数组或逗号分隔的字符串
- 检查文件权限
6. 评论系统不显示
可能原因:
- Giscus 未配置
- 配置错误
解决方法:
- 检查
_blog/config.php或.env中的 Giscus 配置 - 访问 https://giscus.app 验证配置
- 检查浏览器控制台是否有错误
7. 站点地图无法访问
症状: sitemap.php 返回 404
解决方法:
- 检查文件是否存在
- 检查 Web 服务器配置
- 确保 PHP 可以执行
8. 性能问题
症状: 页面加载缓慢
解决方法:
- 启用缓存(检查
CACHE_ENABLED) - 使用 Redis 缓存(如果可用)
- 检查 CDN 资源加载
- 优化 Markdown 文件大小
调试技巧
启用调试模式
在 .env 文件中设置:
DEBUG=true
APP_ENV=development
查看缓存统计
$cache = new CacheService();
$stats = $cache->getStats();
var_dump($stats);
检查路径验证
$validator = new PathValidator(BLOG_ROOT);
$isValid = $validator->validateMarkdownFile($filePath);
日志位置
- PHP 错误日志:根据 PHP 配置
- 访问日志:Web 服务器日志
- 缓存日志:无(缓存操作静默失败)
获取帮助
如果问题仍然存在:
- 检查 GitHub Issues
- 查看文档
- 提交 Issue(包含错误信息和环境信息)