标签: phpseclib

phpseclib NET_SFTP_STATUS_NO_SUCH_FILE:文件存在时找不到文件

我正在使用 phpseclib 将文件上传到远程服务器。以前,我的脚本运行良好,但几周前它似乎已停止工作。我得到一个

NET_SFTP_STATUS_NO_SUCH_FILE:从 $sftp->put 中找不到文件。

问题是要上传到服务器的文件确实存在。另外,该代码以前可以正常工作。

由于该脚本之前可以运行,似乎目标服务器的某些设置可能已更改。

有没有人有解决此问题的任何想法或建议?

php sftp phpseclib

3
推荐指数
1
解决办法
2293
查看次数

phpseclib sftp使用私钥和密码连接

无论如何使用phpseclib或任何其他方法将sftp与私钥和ftp密码连接起来.

sftp key phpseclib

3
推荐指数
1
解决办法
8046
查看次数

如何使用 PHP 从 SFTP 服务器下载文件

我希望允许用户直接从 sftp 服务器下载文件,但在浏览器中。

我找到了读取文件并回显字符串的方法(使用 ssh2.sftp 或 phpseclib 连接),但我需要下载,而不是读取。

另外,我看到的解决方案建议从 sftp 服务器下载到 Web 服务器,然后使用 readfile() 从 Web 服务器到用户的本地磁盘。但这意味着两次文件传输,如果文件很大,我想这会很慢。

可以直接从sftp下载到用户磁盘吗?

为任何回应干杯!

php sftp download phpseclib

3
推荐指数
1
解决办法
6340
查看次数

将phpseclib整合到Laravel 5中

我目前正将我的项目从Laravel 4迁移到Laravel 5,我仍然是Laravel和OOP的新手用户,但到目前为止一切顺利.

但是,在我的L4项目中,我使用phpseclib生成SSH密钥,我通过以下方式导入:

MyController.php

...
include('../app/libs/phpseclib0.3.10/Crypt/RSA.php');
$rsa = new Crypt_RSA();
...
Run Code Online (Sandbox Code Playgroud)

这似乎不再起作用了:

syntax error, unexpected 'if' (T_IF), expecting identifier (T_STRING) 
Run Code Online (Sandbox Code Playgroud)

... /应用/库/ phpseclib0.3.10 /地穴/ RSA.php

/**
* Include Crypt_Random
*/
// the class_exists() will only be called if the crypt_random_string function hasn't been defined and
// will trigger a call to __autoload() if you're wanting to auto-load classes
// call function_exists() a second time to stop the include_once from being called outside
// of the auto loader
if (!function_exists('crypt_random_string')) …
Run Code Online (Sandbox Code Playgroud)

php laravel phpseclib

3
推荐指数
2
解决办法
5561
查看次数

使用phpseclib的SFTP如何检查上传的文件

我正在使用phpseclib将文件上传到远程服务器.以前,我的脚本工作正常,但我所期望的是它可以检查远程服务器是否已收到该文件.如文件存在则返回1/true或文件不存在则返回0/false.

我的代码:

include('Net/SFTP.php');

$path = "upload/";
$path_dir .=   $ref .".xml";
$directory = '/home/XML/';
$directory .=   $ref .".xml";

$sftp = new Net_SFTP('xxx.com',22);
if (!$sftp->login('username', 'password'))
{
    exit('SFTP Login Failed');
}
echo $sftp->pwd();

$sftp->put($directory, $path_dir, NET_SFTP_LOCAL_FILE);

if (!$sftp->get($directory))
{
    echo "0";
}
Run Code Online (Sandbox Code Playgroud)

文件上传成功,但不知道如何检查文件是否存在.

有没有人对此进行故障排除有任何想法或建议?

php sftp file-upload file-exists phpseclib

3
推荐指数
1
解决办法
4069
查看次数

phpseclib给了我一个奇怪的错误

我试图使用这个,但它只是给我这个错误,我不知道如何解决这个问题..

警告:include_once(Math/BigInteger.php):无法打开流:891行/home/www/sfs_web/statistics/_public/_functions/Server/Net/SSH2.php中没有此类文件或目录

警告:include_once():在/ home/www/sfs_web/statistics/_public /中打开'Math/BigInteger.php'以包含(include_path ='.:/ usr/share/php:/ usr/share/pear')失败第891行的_functions/Server/Net/SSH2.php

警告:include_once(Crypt/Random.php):无法打开流:第895行/home/www/sfs_web/statistics/_public/_functions/Server/Net/SSH2.php中没有此类文件或目录

警告:include_once():在/ home/www/sfs_web/statistics/_public /中打开'Crypt/Random.php'以包含(include_path ='.:/ usr/share/php:/ usr/share/pear')失败第895行的_functions/Server/Net/SSH2.php

警告:include_once(Crypt/Hash.php):无法打开流:899行/home/www/sfs_web/statistics/_public/_functions/Server/Net/SSH2.php中没有此类文件或目录

警告:include_once():在/ home/www/sfs_web/statistics/_public /中打开'Crypt/Hash.php'以包含(include_path ='.:/ usr/share/php:/ usr/share/pear')失败第899行的_functions/Server/Net/SSH2.php

警告:include_once(Crypt/Base.php):无法打开流:第904行/home/www/sfs_web/statistics/_public/_functions/Server/Net/SSH2.php中没有此类文件或目录

警告:include_once():在/ home/www/sfs_web/statistics/_public /中打开'Crypt/Base.php'以包含(include_path ='.:/ usr/share/php:/ usr/share/pear')失败第904行的_functions/Server/Net/SSH2.php

致命错误:在第1226行的/home/www/sfs_web/statistics/_public/_functions/Server/Net/SSH2.php中调用未定义的函数phpseclib_resolve_include_path()

include('Net/SSH2.php');
$ssh = new Net_SSH2('host');
if (!$ssh->login('user', 'pass')) {
  echo('Login Failed');
}

$ssh->exec('the cmd line...");
$ssh->disconnect();
Run Code Online (Sandbox Code Playgroud)

php phpseclib

3
推荐指数
1
解决办法
6229
查看次数

phpseclib vs libssh2

在我的一个项目中,我将使用PHP通过SSH远程连接大量服务器.它有两种解决方案,phpseclib和基于libssh2库的PHP 的ssh2 PECL扩展.

那么有人可以比较两者并提及它们的优缺点等吗?

php ssh pecl libssh phpseclib

2
推荐指数
1
解决办法
3204
查看次数

PHPSecLib密码保护RSA和用户身份验证

我正在尝试使用PHPSecLib通过PHP中的SFTP连接到SSH2服务器.但我的问题是,服务器需要一个受密码保护的密钥文件,但也需要用户名和密码.似乎只能提供用户名+密码或用户名+密钥文件(可选择密码保护).

如何使用所有这些东西登录?

http://phpseclib.sourceforge.net/

我的代码看起来像

$key = new Crypt_RSA();
$key->setPassword('keypwd');
$key->loadKey(file_get_contents('ssh_file.ppk'));

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

if (!$sftp->login('username', $key))
  echo 'Failed';
else
  echo 'Success';
Run Code Online (Sandbox Code Playgroud)

但是我应该把密码放在哪里?

- 编辑:服务器只需要RSA密钥,但不知何故密钥未正确加载

php ssh sftp rsa phpseclib

2
推荐指数
1
解决办法
2892
查看次数

如何使用phpseclib设置自定义SFTP端口

我必须使用PHP连接到SFTP服务器.我正在使用phpseclib.我在Internet上找到了一些示例,但我无法连接到SFTP.我正在使用自定义端口(2222)连接到SFTP.请告诉我在哪里可以定义自定义端口以连接到SFTP.

<?php
include('Net/SFTP.php');

$sftp = new Net_SFTP('www.domain.tld');
if (!$sftp->login('username', 'password')) {
    exit('Login Failed');
}
?>
Run Code Online (Sandbox Code Playgroud)

它显示"登录失败".

php sftp phpseclib

2
推荐指数
1
解决办法
6085
查看次数

使用phpseclib下载文件匹配模式

我试图从SFTP服务器下载文件.我已设法连接到它并下载文件.问题是服务器中的文件将每天更新,文件名的一部分是生成它的确切时间,这是不可预测的.

我如何实现我的PHP脚本,以便下载任何名称以某种模式开头的XML文件,但我不知道确切的全名?

php filenames sftp phpseclib

2
推荐指数
1
解决办法
2415
查看次数

标签 统计

phpseclib ×10

php ×9

sftp ×7

ssh ×2

download ×1

file-exists ×1

file-upload ×1

filenames ×1

key ×1

laravel ×1

libssh ×1

pecl ×1

rsa ×1