ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Проблема с заливко й файла (PUT) в директорию на отдельной файло вой системе.



Hello!

On Fri, Oct 31, 2008 at 08:08:18PM +0300, Lior Goikhburg wrote:

> Всем доброго времени.
>
> Недавно столкнулся с проблемой заливки файлов в location в котором  
> включён WEBDAV.
>        location /file/ {
>                dav_methods  PUT DELETE MKCOL COPY MOVE;
>                create_full_put_path   on;
>                dav_access             group:rw  all:r;
>                root   /var/www/storage;
>        }
>
> Заливаю так:
> /test# curl -T file.crp http://host/file/
> <html>
> <head><title>500 Internal Server Error</title></head>
> <body bgcolor="white">
> <center><h1>500 Internal Server Error</h1></center>
> <hr><center>nginx/0.6.32</center>
> </body>
> </html>
>
> В логе следующее:
> 2008/10/31 19:30:45 [crit] 5946#0: *6 rename()  
> "/var/lib/nginx/body/0000000003" to "/var/www/storage/file/file.crp"  
> failed (18: Invalid cross-device link), client: 192.168.1.167, server:  
> server1, request: "PUT /file/file%2Ecrp HTTP/1.1", host: "host"
>
> Директория /var/www/storage смонтирована с другого носителя (отдельного  
> от /var/lib/nginx/body/), в следствии этого и происходит ошибка в вызове  
> rename().
>
> Вопрос: Как заставить это работать ?

Настроить client_body_temp_path так, чтобы он указывал на тот же 
раздел, куда делается PUT.

http://sysoev.ru/nginx/docs/http/ngx_http_dav_module.html#dav_methods

Maxim Dounin



 




Copyright © Lexa Software, 1996-2009.