這是我的代碼upload.php
。我所有的文件都在MAMP的htdocs
目錄中。我可以去的網址http://localhost:8888/webpage.html
,所以我假設MAMP正在工作,因爲它應該。這是我的代碼upload.php
。無法使用phpseclib ssh進入服務器
<?php
set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib');
include('Net/SFTP.php');
include('Net/SSH2.php');
//Send file via sftp to server
echo "begin";
echo "now connecting...";
$connection = ssh2_connect('servername.com', 22); //server redacted
echo "server made\n";
ssh2_auth_password($connection, 'username', 'password'); //username and password redacted
echo "connected successfuly\n";
echo $ssh->exec('pwd');
echo $ssh->exec('ls -la');
?>
當我提交我的表單和它被重定向到upload.php
,該upload.php
顯示文本說
begin now connecting...
所以我假設它沒有得到過線
$connection = ssh2_connect('servername.com', 22); //server redacted
但我不明白爲什麼。
我正在使用mac。我可以通過終端使用ssh [email protected]
和scp ./filename.txt [email protected]:~/test/
ssh進入服務器和scp文件。顯然它會提示我輸入密碼。
也許我有錯誤的服務器名稱?有沒有人有任何想法,爲什麼它沒有越過這條線?
是啊,我一直在複製並從不同的來源粘貼代碼,但沒有在工作。而且我的代碼沒有到達'$ ssh'變量,所以我還沒有關心它。事實證明,我需要而不是'。 'phpseclib'我需要將整個目錄路徑包含到它的安裝位置。奇怪的是,它不會讓我包含多種東西。我可以包含'Net/SFTP.php'或'Net/SSH2.php',但不能同時包含。謝謝。 – Diego