宝塔PHP定时任务怎么添加_计划任务创建与调试操作【指南】-php教程

必须用绝对路径调用宝塔对应php版本的cli解释器,如/www/server/php/80/bin/php,而非系统php命令,并在shell脚本任务中指定完整路径、处理工作目录与权限。

宝塔面板里添加 PHP 脚本定时任务的正确姿势

直接在宝塔「计划任务」里填 PHP 脚本路径,大概率执行失败——因为没指定 PHP 解释器路径,也没处理工作目录和环境变量。必须用绝对路径调用对应版本的 php 命令,否则脚本找不到扩展、连不上数据库、读不到相对路径文件都是常态。

  • 进宝塔后台 → 「计划任务」→ 「添加计划任务」
  • 任务类型选「Shell 脚本」(别选「PHP 脚本」,那个只支持简单函数调用,不走 CLI 环境)
  • 脚本内容写成:
    /www/server/php/80/bin/php /www/wwwroot/example.com/cli.php

    (把 80 换成你实际启用的 PHP 版本号,cli.php 改为你的脚本绝对路径)

  • 执行周期按需设置,建议首次调试先设「每分钟」,确认能跑通再调回正常频率

为什么用 /www/server/php/xx/bin/php 而不是系统 php

宝塔多 PHP 版本共存时,系统 php 命令通常指向默认版本(可能是 7.4 或未启用的版本),而你的网站用的是 8.0 或 8.2,扩展、配置、SSL 证书路径全都不一样。直接调用 php 极易报错:Class 'PDO' not found、Undefined function curl_init()、file_get_contents(): SSL operation failed。

  • /www/server/php/xx/bin/php 是宝塔为每个 PHP 版本单独编译的 CLI 可执行文件,加载的是该版本完整的 php.ini
  • 可通过宝塔「软件商店」→「PHP 管理」→「设置」→「配置文件」确认对应版本的 php.ini 路径,再检查扩展是否已启用
  • 如果脚本依赖 Composer 自动加载,确保 vendor/autoload.php 路径正确,且 composer install --no-dev 已在目标目录执行过

调试 PHP 定时任务失败的三步定位法

任务显示「执行成功」但脚本没反应?或日志里一堆 Warning 却没输出?别猜,按顺序查:

夏夕资源网专注于CMS网站模板,主流语言整站网站源码下载,网站建设相关教程分享,好用的软件素材整合下载,提供一站式便捷自助服务。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"zy.lucklyus.top",如遇到无法解压的请联系管理员!
夏夕资源网-网站模板_免费源码_资源素材 » 宝塔PHP定时任务怎么添加_计划任务创建与调试操作【指南】-php教程
在线时间:12:00 - 22:00
关注微信公众号:微信公众号
站长邮箱:[email protected]
  • 运营天数: 1394+
  • 资源总数: 47989+
  • 用户总数: 1+
  • 今日更新: 0+
  • 访问次数: 4039742+
  • 本周更新: 0+
  • 最后更新: 2026-03-16

本站指数

×
  • 运营天数: 1394+
  • 资源总数: 47989+
  • 用户总数: 1+
  • 今日更新: 0+
  • 访问次数: 4039743+
  • 本周更新: 0+
  • 最后更新: 2026-03-16