在plesk中创建计划任务会导致错误

时间:2019-05-09 20:14:15

标签: php windows scheduled-tasks plesk

在Windows上创建计划任务以在Plesk Onyx中运行php脚本时,将导致错误。

但是,当我在浏览器中运行相同的脚本时,它可以正常工作。

我一直在Webroot中寻找权限设置,并将其设置为允许访问服务器上的所有用户组。

我得到的错误如下:

Warning: require(\pcp2\inc\db_config.php): failed to open stream: No such file or directory in D:\www\domain\pcp2\conversion\addBooking.php on line 5

Fatal error: require(): Failed opening required '\pcp2\inc\db_config.php' (include_path='.;.\includes;.\pear') in D:\www\domain\pcp2\conversion\addBooking.php on line 5

第5行包含以下信息:

require($_SERVER['DOCUMENT_ROOT']."\pcp2\inc\db_config.php");

1 个答案:

答案 0 :(得分:1)

失败的原因是$_SERVER['DOCUMENT_ROOT']是Web服务器提供的值,因此在没有Web服务器的情况下(即从命令行)运行时未定义。您需要提供一种替代机制来进行设置基本目录。

您可以使用相对路径:

require("pcp2\inc\db_config.php");

或基于魔术常数__DIR__的绝对路径。 (这假设执行要求的脚本在文档根目录中。)

require(__DIR__."\pcp2\inc\db_config.php");

但是,理想情况下,最好是在自动加载程序中使用PSR-4名称间隔。