Проблемы с разрешениями при использовании системы PHP и cURL? - PullRequest
2 голосов
/ 13 октября 2011

Я пытаюсь создать скрипт php, который поместит файл на удаленный сервер.
Следующая строка будет работать из CLI:

curl -u username:pass -T myfile.jpg sftp://my.domain.com/dir/

Однако, если я возьму это в PHP и попробую запустить его через 'system', как:

<? system('curl -u username:pass -T myfile.jpg sftp://my.domain.com/dir/'); ?>

Я получаю сообщение об ошибке:

curl: (7) Failed to connect to xxx.xxx.xx.xx: Permission denied

Кроме того, чтобы усложнить ситуацию, это происходит от RHEL к Windows Server. У кого-нибудь есть предложение или исправление?

Ниже приведен результат из библиотеки PHP cURL.

* About to connect() to my.domain.com port 22 (#0)
*   Trying xxx.xxx.xx.xx... * connected
* Connected to my.domain.com (xxx.xxx.xx.xx) port 22 (#0)
* SSH authentication methods available: publickey,password
* Initialized password authentication
* Authentication complete
* Upload failed: Permission denied (3/-31)
* Connection #0 to host my.domain.com left intact
* Closing connection #0

Ответы [ 2 ]

1 голос
/ 13 октября 2011

PHP имеет собственную библиотеку cURL, которую вы, вероятно, должны использовать. php cURL

0 голосов
/ 13 октября 2011

Ваша проблема в том, что system() не позволяет curl запрашивать у вас пароль.

Рассмотрим другие методы аутентификации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...