Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
phpsec lib路径无法从cron作业工作_Php_Cron_Phpseclib - Fatal编程技术网

phpsec lib路径无法从cron作业工作

phpsec lib路径无法从cron作业工作,php,cron,phpseclib,Php,Cron,Phpseclib,我的脚本的文件路径是 /var/www/html/MyProject/index.php 当我运行脚本作为 ~$ php /var/www/html/MyProject/index.php ~/./Myproject$php index.php它运行得非常好 当我运行脚本作为 ~$ php /var/www/html/MyProject/index.php 它不读取phpseclib文件路径 我的index.php文件是 <?php include("crud.php"); inc

我的脚本的文件路径是

/var/www/html/MyProject/index.php
当我运行脚本作为

~$ php /var/www/html/MyProject/index.php
~/./Myproject$php index.php
它运行得非常好

当我运行脚本作为

~$ php /var/www/html/MyProject/index.php
它不读取phpseclib文件路径

我的index.php文件是

<?php

include("crud.php");
include("functions.php");

set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib');
include('Net/SFTP.php');

...

?>

如何运行php脚本表单cron作业?

从错误消息中,您可以看到
phpseclib
未正确添加到包含路径。请改为对set_include_路径执行以下操作:

set_include_path(get_include_path() . PATH_SEPARATOR .  __DIR__ . DIRECTORY_SEPARATOR . 'phpspeclib');

\uuuu DIR\uuuu
将考虑您正在执行的文件的位置,不要试图查找相对于当前工作目录的
phpseclib

您可以尝试将phpseclib1.0.12库放置到/usr/share/中,或者如果您是从项目运行,则可以尝试这样添加:

set_include_path('/var/www/html/phpseclib1.0.12');
include('Net/SFTP.php');

您在错误日志中看到了哪些错误?我敢肯定,您的问题在于,您包含的文件具有相对路径(include(“crud.php”);),当您从其他文件夹运行脚本时,它看不到您包含的文件。如果这确实是问题所在,则错误日志中会出现无法找到包含项的错误。请编辑问题、crud和函数。php工作正常,phpseclib位于/MyProject/文件夹中