WebDav의 WinSCP가 PUT에서 이상한 날짜 + 오류 500을 표시합니다.

WebDav의 WinSCP가 PUT에서 이상한 날짜 + 오류 500을 표시합니다.

다음과 같이 nginx에 webdav 디렉토리를 설정했습니다.

server { 
    root /home/webuser/www/

    # some more locations for static content

    location /password-repo/ {
        root      /home/webuser/www/dav;
        client_body_temp_path /var/dav/temp;
        dav_methods     PUT DELETE MKCOL COPY MOVE;
        dav_ext_methods   PROPFIND OPTIONS;
        dav_access    user:rw group:rw all:rw;
        autoindex     on;
        auth_basic "restricted";
        auth_basic_user_file /etc/nginx/htpasswd;
    }
}

WebDav 프로토콜, TLS 켜짐, 포트 443, 내 호스트를 사용하여 WinSCP를 사용하여 연결하고 고급 설정에서 /password-repo원격 디렉터리로 설정했습니다.

그러나 나는 여러 가지 이상한 점을 발견했습니다.

  • WinSCP 탭의 경로는 다음과 같습니다user@host/password-repo/Password-repo
  • 상위 폴더의 날짜는 1899년 12월 30일입니다.
  • 루트에 지정된 폴더에 "터치 테스트"를 사용하여 서버에서 빈 파일을 넣었는데 WinSCP에서 볼 수 없습니다
  • 파일을 업로드하려고 할 때 먼저 WinSCP에서 업로드 중인 파일(존재하지 않음)을 덮어쓰라는 확인 팝업을 받았고, 수락하면 500 오류가 다시 발생했습니다.

무슨 일이야?

답변1

작동하려면 두 가지 작업을 수행해야 했습니다.

  • chown dav를 nginx 사용자에게
  • /home/webuser/dav/ 아래에 "password-repo" 디렉터리를 만듭니다.

관련 정보