PHP와의 WebDav 연결/인증
-
13-09-2019 - |
문제
좋아, 그래서 PHP 스크립트는 Servera에 존재합니다. Servera에는 PHP 안전 모드가 켜져 있고 WebDav가 있습니다. 이 요인들 중 하나를 변경할 수 없습니다. Servera의 스크립트가 다른 서버에 대한 사용자의 로그인/비밀번호를 가져 오기를 원합니다. ServerB에는 webdav가 있습니다.
궁극적 인 목표는 사용자가 Servera의 스크립트로 이동하여 ServerB에 대한 자격 증명을 넣은 다음 스크립트가 ical 파일을 생성하여 ServerB에 배치 한 다음 사용자가 Outlook/를 사용하여 ical 파일을 구독 할 수 있다는 것입니다. GoogleCalendar 등 (파일이 WebDav 서버에 있어야 함).
그래서 나는 시도했다
fopen(servername/filename, r)
원격 서버에서 파일을 읽을 수있었습니다. 하지만 내가 시도했을 때
fopen(servername/filename, w)
HTTP 래퍼가 글쓰기를 지원하지 않고 읽기 만 오류가 발생합니다.
간단히 말해서,이 서버에 연결하고 인증하고 파일을 작성한 다음 이미 존재하는 WebDAV 라이브러리를 사용하지 않고 안전한 모드 권한 오류를받지 않고 연결을 닫을 수있는 방법이 있습니까?
감사!
해결책
문제는 PHP 용 HTTP 프로토콜 래퍼가 넣지 않는다는 것입니다. fsockopen 또는 바람직하게는 Curl과 같은 자신의 글을 쓰려고 시도해야합니다.
http://ca3.php.net/manual/en/wrappers.http.php
이것은 안전 모드와 관련이 없습니다.
다른 팁
여기서 문제는 Safe-Mode가 "안전한"영역 밖에서 물건을 실행할 수 없도록 설계되었다는 것입니다.
당신이 시도 할 수있는 것은 (가능하다면) safe_mode_exec_dir
Php.ini에서는 파일 작성을 수행 할 수있는 외부 프로그램을 시작할 수 있습니다 (이 Safe-Mode 디렉토리에 거주하는 경우
인증에 관해서는, 아마도 누군가가 더 자세히 대답 할 수있을 것입니다.