苹果CMS(MacCMS)在长期运行过程中,尤其是开启调试模式或遇到频繁的数据库连接错误时,runtime目录下的日志文件会迅速膨胀。这些日志文件通常以.log结尾,如error.log、sql_error.log等,单个文件甚至可能增长到数GB,直接导致网站磁盘空间耗尽,进而造成网站无法访问、采集失败或视频无法播放。
在开始清理之前,必须先精确定位日志文件的位置。苹果CMS不同版本的日志路径略有差异,主要分布在以下两个核心目录:
/runtime/log/文件夹内。/application/runtime/log/或/protected/runtime/log/文件夹内。接下来的操作将涵盖SSH命令行清理(推荐)和宝塔面板可视化清理两种方式,请根据你的操作习惯选择。
SSH命令行清理是最直接、效率最高的方法,特别适合处理大量碎文件或超大文件。通过终端操作,可以在几秒钟内完成数GB文件的清理。
使用Xshell、PuTTY或FinalShell等SSH客户端工具登录你的服务器。登录后,首先进入你的网站根目录。假设你的网站安装在/www/wwwroot/你的域名.com,执行以下命令:
注意:请将“你的域名.com”替换为你实际的文件夹名称。可以使用ls命令查看当前目录下的文件,确认是否看到了index.php或runtime文件夹。
在执行删除前,建议先查看一下日志的大小,确认是否是这些文件占用了空间。执行以下命令,查看runtime目录下所有文件的大小:
输出结果会显示每个子目录的大小。如果看到runtime/log目录显示几百MB甚至GB级别,说明就是这里的问题。进一步进入log目录查看具体文件:
这里你会看到类似20230101.log、error.log等文件。
确认无误后,使用rm命令删除日志文件。为了防止误操作,我们分两步进行。删除所有.log后缀的文件:
或者,如果你想直接清空整个log目录下的所有内容(包括缓存),可以使用:
```bash rm -rf ./ ```关键细节:执行完删除命令后,必须检查权限。苹果CMS需要重新写入日志,如果权限不足会导致新的报错。执行以下命令重新赋予目录权限:
```bash cd ../../ chmod -R 755 runtime chown -R www:www runtime ```这里的www:www是常见的Web用户组,如果你的服务器配置不同(如宝塔默认Nginx用户),请根据实际情况调整,通常保持默认即可。
如果你不熟悉命令行操作,使用宝塔面板的文件管理器同样可以轻松完成。这种方法直观、安全,适合新手。
登录宝塔面板,点击左侧菜单栏的“文件”。在文件列表中找到你的网站根目录,点击进入。
在根目录下找到名为runtime的文件夹。如果你没有看到它,可能是因为它被隐藏了(通常以点开头或被系统隐藏),在宝塔面板右上角设置中勾选“显示隐藏文件”即可。

进入runtime文件夹,继续进入log文件夹。
在log目录下,你会看到大量的日志文件。点击列表顶部的全选框(或者手动框选所有文件),然后点击工具栏上的“删除”按钮。
重要提示:系统会弹出确认框,确认无误后点击确定。此时,这些日志文件会被移入回收站。为了彻底释放磁盘空间,请点击宝塔面板左侧的“回收站”,找到刚才删除的文件,点击“清空回收站”。
手动清理只能解决一时的问题,日志文件还会继续增长。作为资深开发者,我建议配置一个定时任务(Cron Job),让服务器自动定期清理过期的日志文件,实现一劳永逸。
在服务器上创建一个清理脚本。你可以通过宝塔面板的文件管理器,在网站根目录外(如/www/scripts/)新建一个文件clean_maccms_log.sh。
编辑该文件,填入以下内容:
```bash !/bin/bash 苹果CMS日志自动清理脚本 定义网站路径,请修改为你的实际路径 WEB_PATH="/www/wwwroot/你的域名.com" 删除7天前的所有.log文件 find $WEB_PATH/runtime/log/ -name ".log" -type f -mtime +7 -exec rm -f {} \; 如果是v8版本,路径可能不同,取消下面注释 find $WEB_PATH/application/runtime/log/ -name ".log" -type f -mtime +7 -exec rm -f {} \; echo "日志清理完成:$(date)" ```代码解释:-mtime +7表示查找修改时间超过7天的文件,这样可以保留最近一周的日志以便排查问题,只清理老旧的垃圾日志。
保存文件后,必须赋予脚本执行权限。在SSH终端执行:
```bash chmod +x /www/scripts/clean_maccms_log.sh ```打开宝塔面板,点击左侧“计划任务”。添加一个新任务:
/www/scripts/clean_maccms_log.sh点击提交。现在,系统会自动定期清理日志,再也不用担心磁盘爆满。
清理日志是治标,优化配置减少日志产生才是治本。如果sql_error.log增长极快,说明数据库连接或查询存在严重问题。
打开苹果CMS的数据库配置文件(通常在/application/database.php)。检查数据库名、用户名、密码是否正确。如果连接信息错误,每一次请求都会写一条错误日志,文件瞬间就会变大。
在生产环境中,必须关闭调试模式。打开网站根目录下的.env文件(v10)或application.php(v8)。
找到APP_DEBUG项,将其设置为false:
开启调试模式不仅会记录详细报错,还会暴露服务器路径等敏感信息,极其危险。关闭后,系统只会记录严重错误,大幅减少日志写入量。
在部分版本的配置中,你可以设置日志记录级别。将日志级别设置为error,只记录致命错误,忽略info和notice级别的信息。
通过以上步骤,你不仅可以清理掉占用空间的垃圾文件,还能通过自动化脚本和配置优化,彻底解决苹果CMS日志爆满的问题。立即操作,释放你的服务器资源吧。
易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图