2013-12-12 61 views
1

我試圖讓SabreDAV和Nginx工作,但它創建了一個ZERO字節文件(使用Cyber​​duck作爲我的DAV客戶端)。該文件被創建,但沒有內容(所以基本上像一個觸摸)HTML前端插件上傳罰款,所以我認爲文件權限是確定的。我似乎無法弄清楚如何獲得調試信息進行SabreDAV的(沒有黑客的代碼)SabreDAV + Nginx + PUT(創建0字節文件)

我試圖使http_dav_module(真的不知道這是否是相關的)

sudo nginx -V 

configure arguments: 
--prefix=/usr/share/nginx 
--conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-log-path=/var/log/nginx/access.log --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --with-pcre-jit --with-debug --with-file-aio --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_realip_module --with-http_secure_link_module --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --with-http_xslt_module --with-ipv6 --with-mail --with-mail_ssl_module --add-module=/usr/src/nginx/source/nginx-1.4.2/debian/modules/nginx-auth-pam --add-module=/usr/src/nginx/source/nginx-1.4.2/debian/modules/nginx-dav-ext-module --add-module=/usr/src/nginx/source/nginx-1.4.2/debian/modules/nginx-echo --add-module=/usr/src/nginx/source/nginx-1.4.2/debian/modules/nginx-upstream-fair --add-module=/usr/src/nginx/source/nginx-1.4.2/debian/modules/nginx-syslog --add-module=/usr/src/nginx/source/nginx-1.4.2/debian/modules/nginx-cache-purge --add-module=/usr/src/nginx/source/nginx-1.4.2/debian/modules/ngx_http_pinba_module --add-module=/usr/src/nginx/source/nginx-1.4.2/debian/modules/ngx_http_substitutions_filter_module --add-module=/usr/src/nginx/source/nginx-1.4.2/debian/modules/nginx-x-rid-header --with-ld-opt=-lossp-uuid 

server { 
    ... 
    # DAV 
    client_body_temp_path  /tmp; 
    dav_methods     PUT DELETE MKCOL COPY MOVE; 
    create_full_put_path  on; 
    dav_access     group:rw all:r; 
    ... 
} 

重啓nginx的

+0

不知道如何在這裏做一個賞金,所以我剛剛在odesk上發佈了一份工作:https://www.odesk.com/jobs/~~60b32f11a9e6c707 –

回答

2

SabreDAV處理所有的DAV方法。您必須完全關閉nginx的dav模塊以使其工作。

+0

看起來正確的指令是'dav_methods off;'(註釋其他指令的好措施,然後重新啓動),但它仍然給我0字節的文件。有沒有更好的方法來關閉** nginx dav模塊? –

+0

更令人生氣的是,客戶端(Cyber​​duck)報告像所有的工作:image1.pdf上傳完成63.9 KB的63.9 KB,但它仍然是一個0字節文件 –

+0

關閉nginx dav模塊現在給出的錯誤消息:'I/O錯誤:上傳失敗不允許(來自Cyber​​duck) - 這是我收到的錯誤消息,爲什麼我試圖打開nginx dav模塊。 –