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