ssh2_sftp_rename 또는 일반적으로 SSH2/SFTP 래퍼에 문제가 있습니다.ssh2_sftp_rename을 디버깅하는 방법은 무엇입니까?
두 개의 SFTP 서버가 있습니다. 하나는 우리가 직접 설정 한 테스트 서버이고 다른 하나는 서비스 제공 업체의 테스트 서버입니다. 테스트 서버에서는 모든 것이 잘 작동하지만 제공된 SFTP에서는 PHP를 통해 파일의 이름을 바꿀 수 없습니다. sftp cli를 통해 수동으로 이름을 바꾸면 올바르게 작동합니다. SFTP 서버는 프로토콜 버전 2.0과 원격 소프트웨어 버전 OpenSSH_6.0p1 Debian-4를 사용하고, 다른 하나는 프로토콜 버전 2.0, 원격 소프트웨어 버전 OpenSSH_5.3을 사용합니다. 그래서 나는 그들이 똑같이 행동해야한다고 생각합니다.
<?php
$connection = ssh2_connect('sftp.serviceprovider.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);
$result = ssh2_sftp_rename($sftp, '/new/foo.xml.gz', '/processed/foo.xml.gz');
var_dump($result);
var_dump(error_get_last());
$result
이 false
및 error_get_last()
반환 NULL
입니다 :
다음은 작동하지 않습니다 테스트를위한 작은 코드 조각,입니다. 나는 또한 생각할 수있는 시작 슬래시 또는 다른 조합을 남기려고했으나 "작동하지 않음": 파일은 여전히 '새'폴더에 있습니다.
그래서 불행히도 서비스 제공 업체의 로그 파일을 조사 할 수는 없지만 로그 발췌 나 적어도 분석을 요청했습니다. 그러나 나는 그들의 지원 센터가 내 질문에 대답하고이 물건을 디버깅하려고 할 때까지 기다리는 것을 원하지 않습니다.
ssh2_sftp_rename
또는 rename
이 (가) 뒤에서 무엇을하고 있는지 디버그 할 수 있습니까? 다른 누구도 이와 같은 경험을하고 해결책을 찾았습니까? libssh2 문제를 진단 어떤 힌트를
감사합니다, 마티아스