$_SERVER['DOCUMENT_ROOT'] 在通过 cron 运行的 php 脚本中不起作用
我使用 $_SERVER['DOCUMENT_ROOT']。/lib/sft_required.php“;以在 PHP 脚本中包含“sft_required”文件。当我使用浏览器运行此文件时,它工作正常,但是当我将其作为cron作业运行时,它不起作用。似乎当我们通过cron运行脚本时,该文件未包括在内。
我使用 $_SERVER['DOCUMENT_ROOT']。/lib/sft_required.php“;以在 PHP 脚本中包含“sft_required”文件。当我使用浏览器运行此文件时,它工作正常,但是当我将其作为cron作业运行时,它不起作用。似乎当我们通过cron运行脚本时,该文件未包括在内。
您可以自己填充 $_SERVER['DOCUMENT_ROOT']
$_SERVER['DOCUMENT_ROOT'] = dirname(__FILE__);
如果 cron 文件位于文档根目录中
$_SERVER['DOCUMENT_ROOT'] = dirname(dirname(__FILE__));
如果 cron 文件是文档根目录上方的一个目录
假设您直接通过cron运行脚本(而不是从由cronjob触发的HTTP请求访问的Web服务器(例如,由cron运行wget)访问),那么它当然不起作用。
没有服务器,因此未设置。$_SERVER