nginx+apache+htaccess+static

Gena Makhomed gmm на csdoc.com
Ср Авг 10 19:35:50 UTC 2011


On 10.08.2011 20:42, Oleksandr V. Typlyns'kyi wrote:

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

>    Бред - он читает и отдаёт одновременно.

Александр, по сути своего возражения Вы разумеется правы.
Спасибо за то, что Вы указали мне на ошибку в моих словах.

По форме - я посмотрел в интернете значение слова "Бред",
в частности на вики - http://ru.wikipedia.org/wiki/Бред .

Я Вас чем-то обидел когда-то, или почему Вы сейчас пытаетесь в такой
форме меня оскорбить? Это выглядит как "неспровоцированная агрессия".

>    Более того есть даже достаточно гибкая настройка по буферам и поведению:

>    http://sysoev.ru/nginx/docs/http/ngx_http_proxy_module.html#proxy_buffer_size
>    http://www.lexa.ru/nginx-ru/msg05140.html

>    http://wiki.nginx.org/HttpProxyModule#proxy_max_temp_file_size
>    http://wiki.nginx.org/HttpProxyModule#proxy_temp_file_write_size

в результате сейчас "из коробки" есть
всего два очень далеких от идеала варианта:

1. или nginx скачивает файл с apache в свой временный каталог
на максимальной скорости и потом медленно и печально отдает его клиенту
(особенно интересно это будет с большими файлами по несколько гигабайт)

2. или кто-то очень легко и просто может сделать DoS/DDoS атаку против
таким образом настроенного веб-сервера, скачивая файл очень медленно,
так что в результате все worker-процессы апача будут заняты и сайт
перестанет отвечать на новые запросы пользователей.

таким образом использование в конфиге nginx директивы

proxy_max_temp_file_size

превращает проблему с низкой performance работы веб-сервера
в проблему с возможностью легко сделать denial of service
для всех сайтов на этом веб-сервере. это совсем не похоже
на solution и даже словом workaround такую настройку
веб-сервера назвать трудно.

proxy_temp_file_write_size

мало чем поможет, дефолтовое значение является вполне разумным.

п.с. странно что информации по этим директивам нет в официальной
документации, а есть только на wiki с user generated контентом,
( из-за чего там может быть/есть много ошибок и неточностей )

-- 
Best regards,
  Gena



Подробная информация о списке рассылки nginx-ru