Cron — Php crontab учебные вопросы

На самом деле это продолжение Некоторые пытаются поймать проблему с php вопрос. я использую руководство создать класс для редактирования crontab.
У меня есть файл с классом:

<?php
Class Ssh2_crontab_manager
{
private $connection;
private $path;
private $handle;
private $cron_file;
function __construct($host=NULL, $port=NULL, $username=NULL, $password=NULL)
{
$path_length    = strrpos(__FILE__, "/");
$this->path      = substr(__FILE__, 0, $path_length) . '/';
$this->handle    = 'crontab.txt';
$this->cron_file = "{$this->path}{$this->handle}";

try
{
if ((is_null($host)) || (is_null($port)) || (is_null($username)) || (is_null($password)))
throw new Exception("Please specify the host, port, username and password!");
/*$this->connection = @ssh2_connect($host, $port);
if ( !$this->connection)
throw new Exception("The SSH2 connection could not be established.");

$authentication = @ssh2_auth_password($this->connection, $username, $password);
if ( !$authentication)
throw new Exception("Could not authenticate '{$username}' using password: '{$password}'.");*/
}
catch (Exception $e)
{
echo $e;
}
}
}
?>

И файл, где я его использую:

<?php
include './lib/Ssh2_crontab_manager.php';
$crontab = new Ssh2_crontab_manager('host', '22', 'user', 'pass');
echo 'WORKS';
?>

И снова это говорит, что РАБОТАЕТ сейчас, но если я раскомментирую строку, это ничего не говорит. Теперь я использую код с конца шага, поэтому я не повторяю ошибку, которую я получил в предыдущем вопросе. libssh2 был установлен, может быть проблема в том, что он не был успешно установлен? Как я могу это проверить.

редактировать:
от phpinfo ()
libSSH версия libssh2 / 1.4.2
ОБНОВИТЬ

<?php
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
//include './lib/Ssh2_crontab_manager.php';
//$crontab = new Ssh2_crontab_manager('host', '22', 'user', 'pass');
echo "WORKS";
$connection = ssh2_connect('host','22'); //new variable ...not needed this class
/*if ( !$connection)
{
echo "The SSH2 connection could not be established.";
}
else
{
echo"OK";
}*/
echo "OK?";
$authentication = @ssh2_auth_password($connection, 'user', 'pass');
?>

Теперь я проверяю это так, код все еще застрял на ssh2_connect.

0

Решение

Кажется, у вас есть тайм-аут на вашем сценарии. Проверьте соединение SSH PHP ошибка здесь. Попробуйте установить ограничение времени для вашего сценария ИЛИ отредактируйте php.ini для max_execution_time.

Ты можешь использовать SSH API чтобы это работало.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]