gpt4 book ai didi

php - 如何安装 phpseclib?

转载 作者:行者123 更新时间:2023-12-03 01:26:06 27 4
gpt4 key购买 nike

我已经在我的机器上安装了 Apache,因此我可以使用 localhost 作为 PHP 服务器。这样可行。现在我正在尝试使用 PHP 通过 SFTP 将文件发送到另一台服务器。我环顾四周,看到推荐使用 phpseclib。我似乎不知道如何安装 phpseclib。以下是该网站给出的内容:

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

You have to set the include path.

我明白这些话的意思,但我一直无法让它发挥作用。我正在使用Mac。我的服务器位于 /Users/diego/Sites/ 中。我到底需要将 phpseclib 文件夹放在哪里?我需要在 php 文件中添加哪些行才能包含 phpseclib

最佳答案

我尝试在 Linux 机器上安装 phpseclib。它对我来说非常有效。我希望您的 Mac 上也需要类似的配置。

在Linux服务器上执行以下命令。

sudo apt-get install php5-pgsql php-pear
sudo pear channel-discover phpseclib.sourceforge.net
sudo pear remote-list -c phpseclib
sudo pear install phpseclib/Net_SSH2
sudo service apache2 restart

在Mac上,使用mac端口执行以下命令 sudo 端口 -v self 更新 sudo端口安装php54-ssh2

#add this to the php.ini file /etc/php.ini, it can be placed at the end of the file
extension=/opt/local/lib/php54/extensions/no-debug-non-zts-20100525/ssh2.so
sudo /usr/sbin/apachectl restart

在 Mac 上,使用 homebrew 执行以下命令。 酿造安装php54-ssh2

下载 phpseclib 库并将其包含到您的项目目录中。

在相关的php文件中添加以下代码。

include('phpseclib1.0.5/Net/SFTP.php');

set_include_path(get_include_path().PATH_SEPARATOR.'phpseclib');
define('NET_SFTP_LOGGING', NET_SFTP_LOG_COMPLEX);

$sftp = new Net_SFTP('555.55.55.55', 22);

if(!$sftp->login('username', 'password')) {
echo $sftp->getSFTPLog();
die('Login failed!');
} else {
echo $sftp->pwd();
echo $upload = $sftp->put('/sftp/'.$filename, $uploadedfile, NET_SFTP_LOCAL_FILE);
}

关于php - 如何安装 phpseclib?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30515751/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com