Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Evgeniy Berdnikov
On Mon, Mar 21, 2016 at 04:53:57PM +0300, Andrey Oktyabrskiy wrote:
> Я бы это делал вообще на уровне мониторинга. storage1 заполнился на 95% -
> перегенерировали конфиг(и), перечитали, пишем на storage2. Освободили место
> на storage1, стал он заполнен на 90% - перегенерировали конфиг(и),
> перечитали, пишем снова на storage1.

 Проще поменять симлинк. :) Для атомарности через mv(1) aka rename(2).
-- 
 Eugene Berdnikov

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Andrey Oktyabrskiy

On 2016-03-21 15:41, Иван Мишин wrote:

 От вопроса отклонились, но он по
прежнему актуален для меня. Повторюсь,
в кратце:
- есть nginx, есть вебдав
- есть задача: при закачке файла в
случае отсутствия места на
storage1(/tmp/ram/testdav), nginx должен положить
закачиваемый файл на storage2(/etc/nginx/next_stor)
- при окончании места на storage1 во время
загрузки файла по webdav, клиент получает
ответ 500
- сделано перенаправление на другой
location с другим root ссылающимся уже на
storage2, в случае возникновения 500 (то
есть в случае окончания места на storage1).
- результат в логах следующий:


2016/03/18 19:17:33 [alert] 32563#0: *19 write()
"/tmp/ram/testdav/tengine.tar.12" failed (28: No space left
on device), client: 127.0.0.1, server: testdav, request: "PUT
/tengine.tar HTTP/1.1", host: "testdav"
2016/03/18 19:17:33 [crit] 32563#0: *19 chmod()
"/var/cache/nginx/client_temp/11" failed (2: No such file or
directory), client: 127.0.0.1, server: testdav, request: "PUT
/tengine.tar HTTP/1.1", host: "testdav"
2016/03/18 19:17:33 [crit] 32563#0: *19 unlink()
"/var/cache/nginx/client_temp/11" failed (2: No such file or
directory), client: 127.0.0.1, server: testdav, request: "PUT
/tengine.tar HTTP/1.1", host: "testdav"


Есть рекомендации/идеи как
реализовать? Если нужен мой конфиг,
сообщите я скину.
Я бы это делал вообще на уровне мониторинга. storage1 заполнился на 95% 
- перегенерировали конфиг(и), перечитали, пишем на storage2. Освободили 
место на storage1, стал он заполнен на 90% - перегенерировали конфиг(и), 
перечитали, пишем снова на storage1.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Maxim Konovalov
On 3/21/16 3:41 PM, Иван Мишин wrote:
> Максим пишет:
> 
> Lua - сторонний модуль.  И я бы не рекомендовал использовать его 
> без нужды, качество кода там - сомнительное.
> 
> При этом этот модуль с кодом сомнительного качества присутствует
>  в плюсе nginx, то покупая nginx plus, клиент получает одну из 
> компонент сомнительного качества. Я вижу это так. Да и если бы он
> был на столько сомнителен на сколько об этом заявляют Дунин и 
> Бартенев, разве он попал бы в nginx plus?
> 
[...]

Чтобы продолжать эту дискуссию в каком-то более/менее конструктивном
русле, нужно определиться с количественными, объективно измеряемыми
параметрами этой сомнительности.

Плюсовой поддержкой у нас занимается группа квалифицированных
инженеров, которые постараются решить любые проблемы с нашим
продуктом с заданным SLA. По уже почти трехлетнему опыту продажи
этого бандла -- код lua и вокруг него пока не вызывал каких-то
существенных проблем в этой части. Если вдруг возникнут -- будем
пытаться решить сами, обратимся к автору, приложим максимум усилий.

Поддержкой oss в этом и других листах/форумах тоже занимается
значимая часть нашего коллектива. Понятно, что без какого-либо SLA.

Ну еще раз пытаюсь донести мысль, что Валентин никаких утверждений про
качество кода не делал.

В качестве рекламной паузы: мы точно так же продаем поддержку на
nginx-oss, если кому-то не нравится идея покупать nginx-plus.

-- 
Maxim Konovalov

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Иван Мишин
Максим пишет:

> Lua - сторонний модуль.  И я бы не рекомендовал использовать его
> без нужды, качество кода там - сомнительное.

При этом этот модуль с кодом сомнительного качества присутствует в плюсе
nginx, то покупая nginx plus, клиент получает одну из компонент
сомнительного качества. Я вижу это так.
Да и если бы он был на столько сомнителен на сколько об этом заявляют Дунин
и Бартенев, разве он попал бы в nginx plus?

Я вот лично запутался в теме -- какой вопрос обсуждается?

 От вопроса отклонились, но он по прежнему актуален для меня. Повторюсь, в
кратце:
- есть nginx, есть вебдав
- есть задача: при закачке файла в случае отсутствия места на
storage1(/tmp/ram/testdav), nginx должен положить закачиваемый файл на
storage2(/etc/nginx/next_stor)
- при окончании места на storage1 во время загрузки файла по webdav, клиент
получает ответ 500
- сделано перенаправление на другой location с другим root ссылающимся уже
на storage2, в случае возникновения 500 (то есть в случае окончания места
на storage1).
- результат в логах следующий:

> 2016/03/18 19:17:33 [alert] 32563#0: *19 write()
> "/tmp/ram/testdav/tengine.tar.12" failed (28: No space left on
> device), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
> HTTP/1.1", host: "testdav"
> 2016/03/18 19:17:33 [crit] 32563#0: *19 chmod()
> "/var/cache/nginx/client_temp/11" failed (2: No such file or
> directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
> HTTP/1.1", host: "testdav"
> 2016/03/18 19:17:33 [crit] 32563#0: *19 unlink()
> "/var/cache/nginx/client_temp/11" failed (2: No such file or
> directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
> HTTP/1.1", host: "testdav"


Есть рекомендации/идеи как реализовать? Если нужен мой конфиг, сообщите я
скину.

21 марта 2016 г., 15:22 пользователь Maxim Konovalov 
написал:

> On 3/21/16 3:09 PM, Иван Мишин wrote:
> > Если купить NGINX Plus Extras Package - там внутри будет lua модуль.
> > https://www.nginx.com/products/technical-specs/
> >
> > что-то я совсем запутался,  в плюсе говорится о поддержке lua
> > модуля, а в этой
> > теме https://forum.nginx.org/read.php?21,265294,265310 Бартенев и
> > Дунин говорят о кривости данного модуля. Как же он оказался в плюсе,
> > если по словам людей из nginx, этот модуль якобы плохой?
> >
> Валентин нигде не говорит, что он плохой. Он лишь сообщает очевидную
> истину, что доп. код несет в себе доп. риски.
>
> Максим Дунин пишет, что код далек от совершенства, что скорее всего
> соответствует действительности для бОльшей части кода, написанного
> человечеством за всю историю программирования.
>
> Оба выражают свое личное мнение (и я с ними тоже).
>
> Я вот лично запутался в теме -- какой вопрос обсуждается?
>
> --
> Maxim Konovalov
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Maxim Konovalov
On 3/21/16 3:09 PM, Иван Мишин wrote:
> Если купить NGINX Plus Extras Package - там внутри будет lua модуль.
> https://www.nginx.com/products/technical-specs/
> 
> что-то я совсем запутался,  в плюсе говорится о поддержке lua
> модуля, а в этой
> теме https://forum.nginx.org/read.php?21,265294,265310 Бартенев и
> Дунин говорят о кривости данного модуля. Как же он оказался в плюсе,
> если по словам людей из nginx, этот модуль якобы плохой?
> 
Валентин нигде не говорит, что он плохой. Он лишь сообщает очевидную
истину, что доп. код несет в себе доп. риски.

Максим Дунин пишет, что код далек от совершенства, что скорее всего
соответствует действительности для бОльшей части кода, написанного
человечеством за всю историю программирования.

Оба выражают свое личное мнение (и я с ними тоже).

Я вот лично запутался в теме -- какой вопрос обсуждается?

-- 
Maxim Konovalov

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Иван Мишин
>
> Если купить NGINX Plus Extras Package - там внутри будет lua модуль.
> https://www.nginx.com/products/technical-specs/

что-то я совсем запутался,  в плюсе говорится о поддержке lua модуля, а в
этой теме https://forum.nginx.org/read.php?21,265294,265310 Бартенев и
Дунин говорят о кривости данного модуля. Как же он оказался в плюсе, если
по словам людей из nginx, этот модуль якобы плохой?

21 марта 2016 г., 15:03 пользователь Илья Шипицин 
написал:

> я имел в виду, что на рассылку рассчитывать не приходится.
>
> в рассылке первым делом попросят воспроизвести проблему без сторонних
> модулей (это на самом деле круто, что для опенсорс продукта есть подобная
> поддержка, без шуток)
>
> ну и топикстартер начал обсуждение в этой рассылке, не в платном канале.
>
> 21 марта 2016 г., 15:35 пользователь Gena Makhomed 
> написал:
>
> On 21.03.2016 10:33, Илья Шипицин wrote:
>>
>> относиться к этому явлению как к сомнительному качеству кода или нет,
>>> вопрос субъективный. но да, гарантий вам никто не даст,
>>> решение и риски за вами
>>>
>>
>> Если купить NGINX Plus Extras Package - там внутри будет lua модуль.
>> https://www.nginx.com/products/technical-specs/
>>
>> Обещают как минимум "Assistance with Installation and Deployment".
>> https://www.nginx.com/support/
>>
>> --
>> Best regards,
>>  Gena
>>
>>
>> ___
>> nginx-ru mailing list
>> nginx-ru@nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Илья Шипицин
я имел в виду, что на рассылку рассчитывать не приходится.

в рассылке первым делом попросят воспроизвести проблему без сторонних
модулей (это на самом деле круто, что для опенсорс продукта есть подобная
поддержка, без шуток)

ну и топикстартер начал обсуждение в этой рассылке, не в платном канале.

21 марта 2016 г., 15:35 пользователь Gena Makhomed  написал:

> On 21.03.2016 10:33, Илья Шипицин wrote:
>
> относиться к этому явлению как к сомнительному качеству кода или нет,
>> вопрос субъективный. но да, гарантий вам никто не даст,
>> решение и риски за вами
>>
>
> Если купить NGINX Plus Extras Package - там внутри будет lua модуль.
> https://www.nginx.com/products/technical-specs/
>
> Обещают как минимум "Assistance with Installation and Deployment".
> https://www.nginx.com/support/
>
> --
> Best regards,
>  Gena
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Maxim Konovalov
On 3/21/16 1:41 PM, Alex Domoradov wrote:
> Было бы круто, если бы можно было покупать отдельные модули, а не
> весь пакет целиком. Допустим мне надо только балансировка и lua, но
> при этом я должен купить весь пакет.
> 
> 2 nginx
> а есть ли в планах введение какой то более гибкой системы подписки?
> Например возможность купить отдельные модули, учитывая что вы
> недавно сделали поддержку динамических модулей.
> 
Пока нет таких планов.

Лично я не уверен, что продажи и управление такими подписками
получится реализовать без существенного оверхеда. Речь даже не про ИТ
системы.

-- 
Maxim Konovalov

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Alex Domoradov
Было бы круто, если бы можно было покупать отдельные модули, а не весь
пакет целиком. Допустим мне надо только балансировка и lua, но при этом я
должен купить весь пакет.

2 nginx
а есть ли в планах введение какой то более гибкой системы подписки?
Например возможность купить отдельные модули, учитывая что вы недавно
сделали поддержку динамических модулей.

2016-03-21 12:35 GMT+02:00 Gena Makhomed :

> On 21.03.2016 10:33, Илья Шипицин wrote:
>
> относиться к этому явлению как к сомнительному качеству кода или нет,
>> вопрос субъективный. но да, гарантий вам никто не даст,
>> решение и риски за вами
>>
>
> Если купить NGINX Plus Extras Package - там внутри будет lua модуль.
> https://www.nginx.com/products/technical-specs/
>
> Обещают как минимум "Assistance with Installation and Deployment".
> https://www.nginx.com/support/
>
> --
> Best regards,
>  Gena
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Gena Makhomed

On 21.03.2016 10:33, Илья Шипицин wrote:


относиться к этому явлению как к сомнительному качеству кода или нет,
вопрос субъективный. но да, гарантий вам никто не даст,
решение и риски за вами


Если купить NGINX Plus Extras Package - там внутри будет lua модуль.
https://www.nginx.com/products/technical-specs/

Обещают как минимум "Assistance with Installation and Deployment".
https://www.nginx.com/support/

--
Best regards,
 Gena

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Мисбах-Соловьёв Вадим
модуль nginx-lua разрабатывается в CloudFlare Ну, не совсем. Он разрабатывается в том числе *работниками* CloudFlare, но начинал разрабатываться ещё пока разработчик был в AliBaba ;)

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Илья Шипицин
1) насчет трети российских сайтов, мне почему-то так запомнилось, видимо, я
неправильно понял вот эту новость

https://geektimes.ru/post/270502/

(сами CloudFlare говорят про 2 миллиона доменов)

2) насчет количества тестов, инфа общедоступна
https://github.com/openresty/lua-nginx-module/tree/master/t

самое крупное внедрение, это, наверное, сам CloudFlare. у нас внедрение
есть, в 2gis есть. проблем по части nginx-lua не помню ни разу

относиться к этому явлению как к сомнительному качеству кода или нет,
вопрос субъективный. но да, гарантий вам никто не даст, решение и риски за
вами

21 марта 2016 г., 13:14 пользователь Aleksandr Sytar 
написал:

>
>
> 21 марта 2016 г., 7:42 пользователь Илья Шипицин 
> написал:
>
>> модуль nginx-lua разрабатывается в CloudFlare, по некоторым оценкам через
>> CloudFlare проксируется треть российских сайтов, модуль покрыт тестами (их
>> почти 3000), понятно, что гарантий вам никто не даст и использование будет
>> на ваш риск.
>>
>
> Илья откуда такая инфа?
>
>
>>
>> 18 марта 2016 г., 14:07 пользователь Иван Мишин 
>> написал:
>>
>> Я подумывал о lua изначально, да только вот эта
>>> https://forum.nginx.org/read.php?21,265294,265310 рассылка всю охоту к
>>> lua отбила у меня.
>>>
>>>
>>> 18 марта 2016 г., 8:25 пользователь Илья Шипицин 
>>> написал:
>>>
>>> не так давно пробегал пример, как webdav подружить с lua, чудеса уровня
 тех, про которые вы говорите

 https://forum.nginx.org/read.php?21,259941,259941

 16 марта 2016 г., 20:04 пользователь Иван Мишин 
 написал:

> Добрый день!
>
> Вопрос следующий:
> Есть nginx 1.8.1, на нем настроен вебдав. Конфиг простой
>
>>  server {
>> listen 80;
>> server_name testdav;
>>
>>access_log /var/log/nginx/testdav_access.log main;
>>error_log /var/log/nginx/testdav_error.log error;
>> location / {
>> root /tmp/ram/testdav;
>> open_file_cache off;
>> client_max_body_size 1000m;
>> dav_methods PUT;
>> dav_access user:rw group:r all:r;
>> create_full_put_path on;
>> }
>
> В случае когда nginx записывает файл в  /tmp/ram/testdav и там
> кончается место, хочется сделать так чтобы nginx этот файл записал в 
> другое
> место /tmp2/ram/testdav.
> Есть идеи как это реализовать?
> В случае нехватки места nginx отдает 500 ошибку. пробовал конфиг
>
>> server {
>> listen 80;
>> server_name testdav;
>>
>>access_log /var/log/nginx/testdav_access.log main;
>>error_log /var/log/nginx/testdav_error.log error;
>>
>> location / {
>>  error_page  500 = @e500;
>>
>> root /tmp/ram/testdav;
>> open_file_cache off;
>> client_max_body_size 1000m;
>>
>> dav_methods PUT;
>> dav_access user:rw group:r all:r;
>> create_full_put_path on;
>> }
>>
>> location @e500 {
>>  root /tmp2/ram/testdav;
>> open_file_cache off;
>> client_max_body_size 1000m;
>> dav_methods PUT;
>> dav_access user:rw group:r all:r;
>> create_full_put_path on;
>> }
>> }
>
>
> Но не работает, в логах:
>
>> 2016/03/16 17:40:20 [alert] 15872#0: *1 write() has written only
>> 24576 of 2338816 to /tmp/ram/testdav/tengine.tar.02, client:
>> 127.0.0.1, server: testdav, request: "PUT /tengine.tar HTTP/1.1", host:
>> "testdav"
>> 2016/03/16 17:40:20 [crit] 15872#0: *1 chmod()
>> "/var/cache/nginx/client_temp/01" failed (2: No such file or
>> directory), client: 127.0.0.1, server: testdav, request: "PUT 
>> /tengine.tar
>> HTTP/1.1", host: "testdav"
>> 2016/03/16 17:40:20 [crit] 15872#0: *1 unlink()
>> "/var/cache/nginx/client_temp/01" failed (2: No such file or
>> directory), client: 127.0.0.1, server: testdav, request: "PUT 
>> /tengine.tar
>> HTTP/1.1", host: "testdav"
>
>
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>


 ___
 nginx-ru mailing list
 nginx-ru@nginx.org
 http://mailman.nginx.org/mailman/listinfo/nginx-ru

>>>
>>>
>>> ___
>>> nginx-ru mailing list
>>> nginx-ru@nginx.org
>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>
>>
>>
>> 

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Иван Мишин
Погуглил на тему кто в проде юзает модуль луа, В подтверждение информации
которую дал Илья есть пост в блоге cloudflare
https://blog.cloudflare.com/pushing-nginx-to-its-limit-with-lua/
Вот еще 2gis неплохо на lua сел судя по всему
https://habrahabr.ru/company/2gis/blog/199504/

21 марта 2016 г., 11:14 пользователь Aleksandr Sytar 
написал:

>
>
> 21 марта 2016 г., 7:42 пользователь Илья Шипицин 
> написал:
>
>> модуль nginx-lua разрабатывается в CloudFlare, по некоторым оценкам через
>> CloudFlare проксируется треть российских сайтов, модуль покрыт тестами (их
>> почти 3000), понятно, что гарантий вам никто не даст и использование будет
>> на ваш риск.
>>
>
> Илья откуда такая инфа?
>
>
>>
>> 18 марта 2016 г., 14:07 пользователь Иван Мишин 
>> написал:
>>
>> Я подумывал о lua изначально, да только вот эта
>>> https://forum.nginx.org/read.php?21,265294,265310 рассылка всю охоту к
>>> lua отбила у меня.
>>>
>>>
>>> 18 марта 2016 г., 8:25 пользователь Илья Шипицин 
>>> написал:
>>>
>>> не так давно пробегал пример, как webdav подружить с lua, чудеса уровня
 тех, про которые вы говорите

 https://forum.nginx.org/read.php?21,259941,259941

 16 марта 2016 г., 20:04 пользователь Иван Мишин 
 написал:

> Добрый день!
>
> Вопрос следующий:
> Есть nginx 1.8.1, на нем настроен вебдав. Конфиг простой
>
>>  server {
>> listen 80;
>> server_name testdav;
>>
>>access_log /var/log/nginx/testdav_access.log main;
>>error_log /var/log/nginx/testdav_error.log error;
>> location / {
>> root /tmp/ram/testdav;
>> open_file_cache off;
>> client_max_body_size 1000m;
>> dav_methods PUT;
>> dav_access user:rw group:r all:r;
>> create_full_put_path on;
>> }
>
> В случае когда nginx записывает файл в  /tmp/ram/testdav и там
> кончается место, хочется сделать так чтобы nginx этот файл записал в 
> другое
> место /tmp2/ram/testdav.
> Есть идеи как это реализовать?
> В случае нехватки места nginx отдает 500 ошибку. пробовал конфиг
>
>> server {
>> listen 80;
>> server_name testdav;
>>
>>access_log /var/log/nginx/testdav_access.log main;
>>error_log /var/log/nginx/testdav_error.log error;
>>
>> location / {
>>  error_page  500 = @e500;
>>
>> root /tmp/ram/testdav;
>> open_file_cache off;
>> client_max_body_size 1000m;
>>
>> dav_methods PUT;
>> dav_access user:rw group:r all:r;
>> create_full_put_path on;
>> }
>>
>> location @e500 {
>>  root /tmp2/ram/testdav;
>> open_file_cache off;
>> client_max_body_size 1000m;
>> dav_methods PUT;
>> dav_access user:rw group:r all:r;
>> create_full_put_path on;
>> }
>> }
>
>
> Но не работает, в логах:
>
>> 2016/03/16 17:40:20 [alert] 15872#0: *1 write() has written only
>> 24576 of 2338816 to /tmp/ram/testdav/tengine.tar.02, client:
>> 127.0.0.1, server: testdav, request: "PUT /tengine.tar HTTP/1.1", host:
>> "testdav"
>> 2016/03/16 17:40:20 [crit] 15872#0: *1 chmod()
>> "/var/cache/nginx/client_temp/01" failed (2: No such file or
>> directory), client: 127.0.0.1, server: testdav, request: "PUT 
>> /tengine.tar
>> HTTP/1.1", host: "testdav"
>> 2016/03/16 17:40:20 [crit] 15872#0: *1 unlink()
>> "/var/cache/nginx/client_temp/01" failed (2: No such file or
>> directory), client: 127.0.0.1, server: testdav, request: "PUT 
>> /tengine.tar
>> HTTP/1.1", host: "testdav"
>
>
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>


 ___
 nginx-ru mailing list
 nginx-ru@nginx.org
 http://mailman.nginx.org/mailman/listinfo/nginx-ru

>>>
>>>
>>> ___
>>> nginx-ru mailing list
>>> nginx-ru@nginx.org
>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>
>>
>>
>> ___
>> nginx-ru mailing list
>> nginx-ru@nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-21 Пенетрантность Aleksandr Sytar
21 марта 2016 г., 7:42 пользователь Илья Шипицин 
написал:

> модуль nginx-lua разрабатывается в CloudFlare, по некоторым оценкам через
> CloudFlare проксируется треть российских сайтов, модуль покрыт тестами (их
> почти 3000), понятно, что гарантий вам никто не даст и использование будет
> на ваш риск.
>

Илья откуда такая инфа?


>
> 18 марта 2016 г., 14:07 пользователь Иван Мишин 
> написал:
>
> Я подумывал о lua изначально, да только вот эта
>> https://forum.nginx.org/read.php?21,265294,265310 рассылка всю охоту к
>> lua отбила у меня.
>>
>>
>> 18 марта 2016 г., 8:25 пользователь Илья Шипицин 
>> написал:
>>
>> не так давно пробегал пример, как webdav подружить с lua, чудеса уровня
>>> тех, про которые вы говорите
>>>
>>> https://forum.nginx.org/read.php?21,259941,259941
>>>
>>> 16 марта 2016 г., 20:04 пользователь Иван Мишин 
>>> написал:
>>>
 Добрый день!

 Вопрос следующий:
 Есть nginx 1.8.1, на нем настроен вебдав. Конфиг простой

>  server {
> listen 80;
> server_name testdav;
>
>access_log /var/log/nginx/testdav_access.log main;
>error_log /var/log/nginx/testdav_error.log error;
> location / {
> root /tmp/ram/testdav;
> open_file_cache off;
> client_max_body_size 1000m;
> dav_methods PUT;
> dav_access user:rw group:r all:r;
> create_full_put_path on;
> }

 В случае когда nginx записывает файл в  /tmp/ram/testdav и там
 кончается место, хочется сделать так чтобы nginx этот файл записал в другое
 место /tmp2/ram/testdav.
 Есть идеи как это реализовать?
 В случае нехватки места nginx отдает 500 ошибку. пробовал конфиг

> server {
> listen 80;
> server_name testdav;
>
>access_log /var/log/nginx/testdav_access.log main;
>error_log /var/log/nginx/testdav_error.log error;
>
> location / {
>  error_page  500 = @e500;
>
> root /tmp/ram/testdav;
> open_file_cache off;
> client_max_body_size 1000m;
>
> dav_methods PUT;
> dav_access user:rw group:r all:r;
> create_full_put_path on;
> }
>
> location @e500 {
>  root /tmp2/ram/testdav;
> open_file_cache off;
> client_max_body_size 1000m;
> dav_methods PUT;
> dav_access user:rw group:r all:r;
> create_full_put_path on;
> }
> }


 Но не работает, в логах:

> 2016/03/16 17:40:20 [alert] 15872#0: *1 write() has written only 24576
> of 2338816 to /tmp/ram/testdav/tengine.tar.02, client: 127.0.0.1,
> server: testdav, request: "PUT /tengine.tar HTTP/1.1", host: "testdav"
> 2016/03/16 17:40:20 [crit] 15872#0: *1 chmod()
> "/var/cache/nginx/client_temp/01" failed (2: No such file or
> directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
> HTTP/1.1", host: "testdav"
> 2016/03/16 17:40:20 [crit] 15872#0: *1 unlink()
> "/var/cache/nginx/client_temp/01" failed (2: No such file or
> directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
> HTTP/1.1", host: "testdav"




 ___
 nginx-ru mailing list
 nginx-ru@nginx.org
 http://mailman.nginx.org/mailman/listinfo/nginx-ru

>>>
>>>
>>> ___
>>> nginx-ru mailing list
>>> nginx-ru@nginx.org
>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>
>>
>>
>> ___
>> nginx-ru mailing list
>> nginx-ru@nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-20 Пенетрантность Илья Шипицин
модуль nginx-lua разрабатывается в CloudFlare, по некоторым оценкам через
CloudFlare проксируется треть российских сайтов, модуль покрыт тестами (их
почти 3000), понятно, что гарантий вам никто не даст и использование будет
на ваш риск.

18 марта 2016 г., 14:07 пользователь Иван Мишин 
написал:

> Я подумывал о lua изначально, да только вот эта
> https://forum.nginx.org/read.php?21,265294,265310 рассылка всю охоту к
> lua отбила у меня.
>
>
> 18 марта 2016 г., 8:25 пользователь Илья Шипицин 
> написал:
>
> не так давно пробегал пример, как webdav подружить с lua, чудеса уровня
>> тех, про которые вы говорите
>>
>> https://forum.nginx.org/read.php?21,259941,259941
>>
>> 16 марта 2016 г., 20:04 пользователь Иван Мишин 
>> написал:
>>
>>> Добрый день!
>>>
>>> Вопрос следующий:
>>> Есть nginx 1.8.1, на нем настроен вебдав. Конфиг простой
>>>
  server {
 listen 80;
 server_name testdav;

access_log /var/log/nginx/testdav_access.log main;
error_log /var/log/nginx/testdav_error.log error;
 location / {
 root /tmp/ram/testdav;
 open_file_cache off;
 client_max_body_size 1000m;
 dav_methods PUT;
 dav_access user:rw group:r all:r;
 create_full_put_path on;
 }
>>>
>>> В случае когда nginx записывает файл в  /tmp/ram/testdav и там кончается
>>> место, хочется сделать так чтобы nginx этот файл записал в другое место
>>> /tmp2/ram/testdav.
>>> Есть идеи как это реализовать?
>>> В случае нехватки места nginx отдает 500 ошибку. пробовал конфиг
>>>
 server {
 listen 80;
 server_name testdav;

access_log /var/log/nginx/testdav_access.log main;
error_log /var/log/nginx/testdav_error.log error;

 location / {
  error_page  500 = @e500;

 root /tmp/ram/testdav;
 open_file_cache off;
 client_max_body_size 1000m;

 dav_methods PUT;
 dav_access user:rw group:r all:r;
 create_full_put_path on;
 }

 location @e500 {
  root /tmp2/ram/testdav;
 open_file_cache off;
 client_max_body_size 1000m;
 dav_methods PUT;
 dav_access user:rw group:r all:r;
 create_full_put_path on;
 }
 }
>>>
>>>
>>> Но не работает, в логах:
>>>
 2016/03/16 17:40:20 [alert] 15872#0: *1 write() has written only 24576
 of 2338816 to /tmp/ram/testdav/tengine.tar.02, client: 127.0.0.1,
 server: testdav, request: "PUT /tengine.tar HTTP/1.1", host: "testdav"
 2016/03/16 17:40:20 [crit] 15872#0: *1 chmod()
 "/var/cache/nginx/client_temp/01" failed (2: No such file or
 directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
 HTTP/1.1", host: "testdav"
 2016/03/16 17:40:20 [crit] 15872#0: *1 unlink()
 "/var/cache/nginx/client_temp/01" failed (2: No such file or
 directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
 HTTP/1.1", host: "testdav"
>>>
>>>
>>>
>>>
>>> ___
>>> nginx-ru mailing list
>>> nginx-ru@nginx.org
>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>
>>
>>
>> ___
>> nginx-ru mailing list
>> nginx-ru@nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-20 Пенетрантность Иван Мишин
Я подумывал о lua изначально, да только вот эта
https://forum.nginx.org/read.php?21,265294,265310 рассылка всю охоту к lua
отбила у меня.


18 марта 2016 г., 8:25 пользователь Илья Шипицин 
написал:

> не так давно пробегал пример, как webdav подружить с lua, чудеса уровня
> тех, про которые вы говорите
>
> https://forum.nginx.org/read.php?21,259941,259941
>
> 16 марта 2016 г., 20:04 пользователь Иван Мишин 
> написал:
>
>> Добрый день!
>>
>> Вопрос следующий:
>> Есть nginx 1.8.1, на нем настроен вебдав. Конфиг простой
>>
>>>  server {
>>> listen 80;
>>> server_name testdav;
>>>
>>>access_log /var/log/nginx/testdav_access.log main;
>>>error_log /var/log/nginx/testdav_error.log error;
>>> location / {
>>> root /tmp/ram/testdav;
>>> open_file_cache off;
>>> client_max_body_size 1000m;
>>> dav_methods PUT;
>>> dav_access user:rw group:r all:r;
>>> create_full_put_path on;
>>> }
>>
>> В случае когда nginx записывает файл в  /tmp/ram/testdav и там кончается
>> место, хочется сделать так чтобы nginx этот файл записал в другое место
>> /tmp2/ram/testdav.
>> Есть идеи как это реализовать?
>> В случае нехватки места nginx отдает 500 ошибку. пробовал конфиг
>>
>>> server {
>>> listen 80;
>>> server_name testdav;
>>>
>>>access_log /var/log/nginx/testdav_access.log main;
>>>error_log /var/log/nginx/testdav_error.log error;
>>>
>>> location / {
>>>  error_page  500 = @e500;
>>>
>>> root /tmp/ram/testdav;
>>> open_file_cache off;
>>> client_max_body_size 1000m;
>>>
>>> dav_methods PUT;
>>> dav_access user:rw group:r all:r;
>>> create_full_put_path on;
>>> }
>>>
>>> location @e500 {
>>>  root /tmp2/ram/testdav;
>>> open_file_cache off;
>>> client_max_body_size 1000m;
>>> dav_methods PUT;
>>> dav_access user:rw group:r all:r;
>>> create_full_put_path on;
>>> }
>>> }
>>
>>
>> Но не работает, в логах:
>>
>>> 2016/03/16 17:40:20 [alert] 15872#0: *1 write() has written only 24576
>>> of 2338816 to /tmp/ram/testdav/tengine.tar.02, client: 127.0.0.1,
>>> server: testdav, request: "PUT /tengine.tar HTTP/1.1", host: "testdav"
>>> 2016/03/16 17:40:20 [crit] 15872#0: *1 chmod()
>>> "/var/cache/nginx/client_temp/01" failed (2: No such file or
>>> directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
>>> HTTP/1.1", host: "testdav"
>>> 2016/03/16 17:40:20 [crit] 15872#0: *1 unlink()
>>> "/var/cache/nginx/client_temp/01" failed (2: No such file or
>>> directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
>>> HTTP/1.1", host: "testdav"
>>
>>
>>
>>
>> ___
>> nginx-ru mailing list
>> nginx-ru@nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-19 Пенетрантность Alex Domoradov
Если дружите с перлом, можете на нем

2016-03-18 11:07 GMT+02:00 Иван Мишин :

> Я подумывал о lua изначально, да только вот эта
> https://forum.nginx.org/read.php?21,265294,265310 рассылка всю охоту к
> lua отбила у меня.
>
>
> 18 марта 2016 г., 8:25 пользователь Илья Шипицин 
> написал:
>
> не так давно пробегал пример, как webdav подружить с lua, чудеса уровня
>> тех, про которые вы говорите
>>
>> https://forum.nginx.org/read.php?21,259941,259941
>>
>> 16 марта 2016 г., 20:04 пользователь Иван Мишин 
>> написал:
>>
>>> Добрый день!
>>>
>>> Вопрос следующий:
>>> Есть nginx 1.8.1, на нем настроен вебдав. Конфиг простой
>>>
  server {
 listen 80;
 server_name testdav;

access_log /var/log/nginx/testdav_access.log main;
error_log /var/log/nginx/testdav_error.log error;
 location / {
 root /tmp/ram/testdav;
 open_file_cache off;
 client_max_body_size 1000m;
 dav_methods PUT;
 dav_access user:rw group:r all:r;
 create_full_put_path on;
 }
>>>
>>> В случае когда nginx записывает файл в  /tmp/ram/testdav и там кончается
>>> место, хочется сделать так чтобы nginx этот файл записал в другое место
>>> /tmp2/ram/testdav.
>>> Есть идеи как это реализовать?
>>> В случае нехватки места nginx отдает 500 ошибку. пробовал конфиг
>>>
 server {
 listen 80;
 server_name testdav;

access_log /var/log/nginx/testdav_access.log main;
error_log /var/log/nginx/testdav_error.log error;

 location / {
  error_page  500 = @e500;

 root /tmp/ram/testdav;
 open_file_cache off;
 client_max_body_size 1000m;

 dav_methods PUT;
 dav_access user:rw group:r all:r;
 create_full_put_path on;
 }

 location @e500 {
  root /tmp2/ram/testdav;
 open_file_cache off;
 client_max_body_size 1000m;
 dav_methods PUT;
 dav_access user:rw group:r all:r;
 create_full_put_path on;
 }
 }
>>>
>>>
>>> Но не работает, в логах:
>>>
 2016/03/16 17:40:20 [alert] 15872#0: *1 write() has written only 24576
 of 2338816 to /tmp/ram/testdav/tengine.tar.02, client: 127.0.0.1,
 server: testdav, request: "PUT /tengine.tar HTTP/1.1", host: "testdav"
 2016/03/16 17:40:20 [crit] 15872#0: *1 chmod()
 "/var/cache/nginx/client_temp/01" failed (2: No such file or
 directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
 HTTP/1.1", host: "testdav"
 2016/03/16 17:40:20 [crit] 15872#0: *1 unlink()
 "/var/cache/nginx/client_temp/01" failed (2: No such file or
 directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
 HTTP/1.1", host: "testdav"
>>>
>>>
>>>
>>>
>>> ___
>>> nginx-ru mailing list
>>> nginx-ru@nginx.org
>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>
>>
>>
>> ___
>> nginx-ru mailing list
>> nginx-ru@nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: webdav запись файла по другому root в случае если закончилось место

2016-03-19 Пенетрантность Илья Шипицин
не так давно пробегал пример, как webdav подружить с lua, чудеса уровня
тех, про которые вы говорите

https://forum.nginx.org/read.php?21,259941,259941

16 марта 2016 г., 20:04 пользователь Иван Мишин 
написал:

> Добрый день!
>
> Вопрос следующий:
> Есть nginx 1.8.1, на нем настроен вебдав. Конфиг простой
>
>>  server {
>> listen 80;
>> server_name testdav;
>>
>>access_log /var/log/nginx/testdav_access.log main;
>>error_log /var/log/nginx/testdav_error.log error;
>> location / {
>> root /tmp/ram/testdav;
>> open_file_cache off;
>> client_max_body_size 1000m;
>> dav_methods PUT;
>> dav_access user:rw group:r all:r;
>> create_full_put_path on;
>> }
>
> В случае когда nginx записывает файл в  /tmp/ram/testdav и там кончается
> место, хочется сделать так чтобы nginx этот файл записал в другое место
> /tmp2/ram/testdav.
> Есть идеи как это реализовать?
> В случае нехватки места nginx отдает 500 ошибку. пробовал конфиг
>
>> server {
>> listen 80;
>> server_name testdav;
>>
>>access_log /var/log/nginx/testdav_access.log main;
>>error_log /var/log/nginx/testdav_error.log error;
>>
>> location / {
>>  error_page  500 = @e500;
>>
>> root /tmp/ram/testdav;
>> open_file_cache off;
>> client_max_body_size 1000m;
>>
>> dav_methods PUT;
>> dav_access user:rw group:r all:r;
>> create_full_put_path on;
>> }
>>
>> location @e500 {
>>  root /tmp2/ram/testdav;
>> open_file_cache off;
>> client_max_body_size 1000m;
>> dav_methods PUT;
>> dav_access user:rw group:r all:r;
>> create_full_put_path on;
>> }
>> }
>
>
> Но не работает, в логах:
>
>> 2016/03/16 17:40:20 [alert] 15872#0: *1 write() has written only 24576 of
>> 2338816 to /tmp/ram/testdav/tengine.tar.02, client: 127.0.0.1,
>> server: testdav, request: "PUT /tengine.tar HTTP/1.1", host: "testdav"
>> 2016/03/16 17:40:20 [crit] 15872#0: *1 chmod()
>> "/var/cache/nginx/client_temp/01" failed (2: No such file or
>> directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
>> HTTP/1.1", host: "testdav"
>> 2016/03/16 17:40:20 [crit] 15872#0: *1 unlink()
>> "/var/cache/nginx/client_temp/01" failed (2: No such file or
>> directory), client: 127.0.0.1, server: testdav, request: "PUT /tengine.tar
>> HTTP/1.1", host: "testdav"
>
>
>
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru