phpcms计划任务怎么设?定时任务如何添加执行?-1

phpCMS 的计划任务(也叫定时任务)主要用于自动执行一些后台操作,比如更新缓存、发布文章、数据备份等。要设置 phpcms 的计划任务,需要通过系统自带的“计划任务”模块进行添加,并配合服务器的 crontab 或 Windows 计划任务来触发。

1. 在 phpcms 后台添加计划任务

登录后台:进入 phpcms 管理后台(通常是 /admin.php),使用管理员账号登录。

找到计划任务管理:

点击菜单【扩展】→【计划任务管理】可以查看已有的任务,也可以点击“添加任务”创建新的

填写任务信息:

立即学习“PHP免费学习笔记(深入)”;

任务名称:自定义,如“每日缓存更新”调用脚本:填写执行的 PHP 文件路径(相对于 api/cron/ 目录),例如:update_cache.php执行周期:设置执行频率,如每小时、每天、每周等。也可以自定义 cron 表达式启用状态:选择“是”以启用任务

保存后,该任务会出现在列表中,但并不会自动运行,还需要服务器定时访问触发地址。

2. 配置服务器定时执行(crontab)

phpcms 的计划任务依赖于外部请求来触发。你需要在服务器上设置定时访问特定 URL 来激活任务。

触发地址格式:

http://你的域名/api.php?op=cron&release=版本号&authkey=密钥&0.随机数

其中:

authkey:在后台【扩展】→【计划任务管理】页面底部可查看release:phpcms 版本号,一般固定

Linux 服务器设置 crontab:

编辑 crontab:

crontab -e

添加一行(例如每5分钟执行一次):

*/5 * * * * curl -s "http://yourdomain.com/api.php?op=cron&release=2018&authkey=your_auth_key" > /dev/null

保存退出,cron 会自动定期访问该地址,触发后台配置的任务。

3. 常见问题与注意事项

确保 api.php 可被正常访问,且服务器能执行 curl 或 wgetauthkey 泄露可能导致安全风险,不要公开分享自定义脚本需放在 api/cron/ 目录下,且有正确权限如果任务无反应,检查日志或手动访问触发链接测试

4. 自定义任务脚本示例

在 api/cron/update_cache.php 中写入:

<?phpdefined(‘IN_PHPCMS’) or exit(‘No permission resources.’);// 执行你的逻辑,比如更新缓存pc_base::load_sys_func(‘cache’);showmessage(‘缓存更新完成’);?>

添加任务时调用脚本填 update_cache.php 即可。

基本上就这些。只要后台任务设好,服务器定时访问触发,就能实现自动运行。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。