我在 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;
}
}
我設法使用 WinSCP 與 WebDav 協定、TLS 開啟、連接埠 443、我的主機連接到它,並在高級設定中,我將其設定/password-repo
為遠端目錄。
但我注意到很多奇怪的事情:
- WinSCP 標籤中的路徑如下
user@host/password-repo/Password-repo
- 父資料夾的日期是 30/12/1899
- 我透過在 root 中指定的資料夾中使用“touch test”從伺服器放置空文件,但在 WinSCP 中看不到它
- 當我嘗試上傳文件時,我首先從 WinSCP 收到一個確認彈出窗口,以覆蓋我正在上傳的文件(該文件不存在),如果我接受,我會收到 500 錯誤
這是怎麼回事?
答案1
我必須做兩件事才能使其正常工作:
- chown dav 到 nginx 用戶
- 在 /home/webuser/dav/ 下建立「password-repo」目錄