phpseclib0.3.7 라이브러리를 사용하여 SFTP를 통해 웹 서버에 연결합니다. 존재하는 사용자가 다음 구조를 갖는다 :sftp 및 php 파일 업로드
/dirhome/FirstUser/FirstUser/
/dirhome/SecondUser/SecondUser/
/dirhome/....../.....
여기서
dirhome:
own -> root:root
permission -> 700
FirsUser: (is the name of a user (example))
own -> root:root
permission -> 755
FirsUser: (is the name of a user (example))
own -> FirstUser:mygroup
permission -> 700
번째 사용자 등에 대해 동일한 구조. 이 기능을 통해 사용자는 자신의 디렉토리에서만 내용을보고 편집하고 만들 수 있습니다.
라이브러리 및 뷰 폴더/파일을 사용하여 PHP로 쉽게 연결할 수 있지만 개인 폴더 내의 원격 서버에있는 사용자의 로컬 PC에서 파일을 업로드하는 방법을 알지 못합니다.
라이브러리는 방법을 제공 :
->put($remotepath, $localpath, NET_SFTP_LOCAL_FILE);
위원장의 problema의 è : 가 어떻게 사용자가 사용자의 PC에있는 파일을 선택하고 그녀의 개인 디렉토리에 업로드 할 수 있도록하는 대화 상자를 열 수 있습니까?
내가 넣어 경우 C:\\Users\\****\\Desktop\\test.txt is not a valid file
을하지만 서버가 잘 작동에 로컬로 상주하는 파일을 가지고 있지만, 경우에 사용자가 해당 파일을 넣을 수 있기 때문에 이해가되지 않습니다 : $localpath = "C:\\Users\\****\\Desktop\\test.txt"
내가 얻을 . 몇 일간 노력했지만 성공하지 못했습니다. 다운로드가 작동하지 않습니다. 본질적으로 동일한 문제입니다.
PHP가 서버에서 실행 중입니다. 따라서 각 사용자의 컴퓨터에 저장된 파일에 액세스 할 수는 없습니다. 두 단계로이 작업을 수행해야합니다. 먼저 PHP 스크립트가 실행되고있는 서버에 HTTP Post를 사용하여 파일을 업로드하십시오. 그런 다음 SFTP를 사용하여 파일을 서버에 복사합니다. –
@ JohannesH. 왜 이걸 대답하지 그래? –
@ JohannesH. 승인! 그런 다음 "두 단계"를 적용하십시오. 다운로드가 똑같은 것을 상상해보십시오! – user2263764