我每晚都会运行一个cron作业,但由于某种原因,它说我尝试包含的文件是不存在的:
Warning: require(../includes/common.php): failed to open stream: No such file or directory in /home/fini7463/public_html/cron/journeyNotifications.php on line 2
Fatal error: require(): Failed opening required '../includes/common.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/fini7463/public_html/cron/journeyNotifications.php on line 2
Run Code Online (Sandbox Code Playgroud)
这是代码:
set_include_path('/home/fini7463/public_html/includes/');
require 'common.php';
Run Code Online (Sandbox Code Playgroud)
'common.php'文件的位置如下
public_html => cron => journeyNotifications.php
=> includes => common.php
Run Code Online (Sandbox Code Playgroud)
我甚至设置了包含路径(如代码所示),但我仍然收到此错误.问题是什么?
谢谢!
如果这样做require('../includes/common.php'),则相对于当前工作目录遍历路径.
如果这样做require('common.php'),则在包含路径中以及调用require()的脚本目录中搜索文件.
要解决此问题,请首先更改crontab中的目录:
cd /home/fini7463/public_html; php -f cronjob.php
Run Code Online (Sandbox Code Playgroud)