Как стать автором
Обновить
12.86

Nginx *

Веб-сервер и почтовый прокси-сервер

Сначала показывать
Порог рейтинга
Уровень сложности

Как мы сэкономили 2000 USD на трафике из Amazon S3 с помощью nginx-кэша

Время на прочтение6 мин
Количество просмотров18K

Эта небольшая история — живое свидетельство того, как самые простые решения (иногда) могут оказаться очень эффективными. В одном из проектов руководство взяло курс на оптимизацию бюджета на инфраструктуру. В результате анализа всех статей расходов стало очевидным, что заметно выдаются счета за сетевой трафик из Amazon S3-бакета, где хранится публичная статика веб-приложения. Так появилась задача найти и реализовать максимально недорогой и решающий бизнес-задачу способ.

Читать далее
Всего голосов 45: ↑43 и ↓2+53
Комментарии27

Запускаем свой RTMP сервер для стриминга

Время на прочтение4 мин
Количество просмотров76K


Иногда YouTube или Twitch не подходят как стриминговая платформа — скажем, если вы пилите портал с вебинарами или контентом 18+, нарушаете авторские права или хотите максимально отгородить свою трансляцию от остального интернета. У них есть много альтернатив как в виде сервисов (те же минусы, недостаток контроля и непредсказуемая политика), так и в виде self-hosted решений. Проблема опенсорсных стриминговых проектов в том, что все они начинаются с крохотной связки из пары технологий, а затем отчаянно пытаются вырасти в сервис, добавляя сложные веб-интерфейсы, чаты, библиотеки стримов и в конечном счёте отдаляясь от исходной цели: дать миру инструмент, который по понятному мануалу позволит запустить свой сервер трансляций. Что с ним будет дальше, в какие системы будет встроена эта картинка — это только ваше личное дело, а самописный аналог твича с лагающими и отваливающимися сервисами и периодически валящимся билдом не нужен никому, кроме его разработчиков. Поэтому в этой статье мы разберём минимальную цепочку действий для запуска своего RTMP-сервера с плеером.
Читать дальше →
Всего голосов 31: ↑29 и ↓2+37
Комментарии14

Как сделать nginx безопасным

Время на прочтение3 мин
Количество просмотров19K


TL;DR: абсолютно устойчивых систем не существует, поэтому ответ — никак. Но можно значительно упростить себе жизнь с помощью Docker-контейнера bunkerized-nginx. О том, чем он отличается от стандартного образа nginx и что интересного умеет, поговорим под катом.
Читать дальше →
Всего голосов 33: ↑28 и ↓5+34
Комментарии22

Некоторые аспекты управления VDS-сервером под Linux

Время на прочтение9 мин
Количество просмотров13K
VDS (Virtual Dedicated Server) — услуга, в рамках которой пользователь получает виртуальный выделенный сервер с максимальными привилегиями. Это эмуляция реального физического сервера, у него есть рутовый доступ, возможность установки произвольных операционных систем и любого софта. При этом он обходится значительно дешевле аренды сопоставимого по мощности физического сервера.

На сервер можно поставить ОС со своего образа или воспользоваться готовым образом в панели управления.



Предположим, мы поставили Debian 10 и веб-сервер Nginx, который идёт в стандартном репозитории (apt install nginx). Давайте посмотрим, какие полезные утилиты и команды помогут в управлении сервером под Linux. Рассмотрим и отдельно Nginx, и сам VDS-сервер в целом.
Читать дальше →
Всего голосов 31: ↑28 и ↓3+36
Комментарии9

Программируем прямо в Nginx

Время на прочтение13 мин
Количество просмотров35K


Nginx — великолепный веб-сервер. Все мы привыкли использовать его в связке с бекендами на разных языках программирования. Но оказывается можно писать простые программы прямо внутри конфигурационного файла Nginx. Это можно использовать для балансировки, написания простых API и даже отдавать динамические страницы прямо из конфига.

В статье мы разберем примеры написания простых программ в конфиге nginx.
Читать дальше →
Всего голосов 30: ↑22 и ↓8+26
Комментарии23

Несколько советов о том, как ускорить сборку Docker-образов. Например, до 30 секунд

Время на прочтение11 мин
Количество просмотров29K

Прежде чем фича попадет на прод, в наше время сложных оркестраторов и CI/CD предстоит пройти долгий путь от коммита до тестов и доставки. Раньше можно было кинуть новые файлы по FTP (так больше никто не делает, верно?), и процесс «деплоя» занимал секунды. Теперь же надо создать merge request и ждать немалое время, пока фича доберётся до пользователей.


Часть этого пути — сборка Docker-образа. Иногда сборка длится минуты, иногда — десятки минут, что сложно назвать нормальным. В данной статье возьмём простое приложение, которое упакуем в образ, применим несколько методов для ускорения сборки и рассмотрим нюансы работы этих методов.


Читать дальше →
Всего голосов 45: ↑44 и ↓1+52
Комментарии33

Linux Kernel TLS и Nginx

Время на прочтение4 мин
Количество просмотров12K
В этой статье я расскажу об истории развития и текущем состоянии технологии ускорения раздачи контента в TLS соединениях путем переноса шифрования в ядро операционной системы, а так же о своём вкладе в развитие этого направления.
Читать дальше →
Всего голосов 36: ↑36 и ↓0+36
Комментарии24

Об одной уязвимости в…

Время на прочтение5 мин
Количество просмотров17K


Год назад, 21 марта 2019, в баг баунти программу Mail.ru на HackerOne пришел очень хороший багрепорт от maxarr. При внедрении нулевого байта (ASCII 0) в POST-параметр одного из API-запросов веб-почты, который возвращал HTTP-редирект, в данных редиректа виднелись куски неинициализированной памяти, в которых чаще всего раскрывались фрагменты из GET-параметров и заголовков других запросов к тому же серверу.
Читать дальше →
Всего голосов 60: ↑57 и ↓3+74
Комментарии14

[Nginx] Как победить response_status = 0

Время на прочтение2 мин
Количество просмотров7.2K
Статья из разряда «заметки на полях».

TL:DR:
http2_max_field_size 8k; # всех спасет!


На одном из проектов, после изменения некоторой внутренней логики бекенда, начал наблюдать странный response_code в логах, а именно — 0. В логах выглядит примерно так:

{
  "timestamp": "2020-01-17T08:41:51+00:00",
  "remote_addr": "zzz.zzz.zzz.zzz",
  "request_time": 0,
  "upstream_response_time": "",
  "upstream_header_time": "",
  "http_accept_language": "-language",
  "response_status": 0,
  "request": "",
  "host": "example.com",
  "upstream_addr": "",
  "http_referrer": "",
  "request_length": 5854,
  "bytes_sent": 0,
  "http_user_agent": ""
}
Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии4

Как программисту защитить свой пет-проект

Время на прочтение3 мин
Количество просмотров21K
image

После скандала вокруг авторских прав на Nginx разработчики стали задавать нам вопросы о защите прав на программные продукты, которые они создают в свободное от работы время по собственной инициативе.

Возможные рекомендации строятся на понимании в каком случае у работодателя могут возникнуть исключительные права на результаты интеллектуальной деятельности наемного сотрудника. Применительно к программному обеспечению речь идет об авторском праве на служебное произведение.

Пошаговая инструкция под катом.
Читать дальше →
Всего голосов 31: ↑29 и ↓2+38
Комментарии76

Манифест об отмене 146 УК и бойкоте Сбербанка и правообладателей-паразитов. За опенсорс и Nginx

Время на прочтение8 мин
Количество просмотров36K

#nginxживи


#ЯМыNginx


#ЯМыСысоевКоновалов


  Астрологи объявили неделю жадных юристов в IT.
Количество правообладятлов увеличилось вдвое.

Когда они вводили реестр запрещенных сайтов, я молчал — что мне до педофилов и экстремистов?..


Когда они пришли за Богатовым, я молчал — я ведь не держал выходную ноду Tor.


Когда они арестовывали протестующих в Москве, я молчал — кто их знает, этих оппозиционеров, может это всё Запад стабильность нарушает.


Когда они собирали подписи на GitHub в поддержку Котова, я молчал — я не разделял его взглядов или не интересовался политикой (чего мне бояться, кому я нужен?).


Когда они пришли за Сысоевым и Коноваловым, я молчал — у меня ведь нет бизнеса на пол-лярда баксов.


… вы находитесь здесь...


Когда они ввели выездные визы для всех с зарплатой выше среднего, я...


Стоп. *звук ускоренной перемотки назад*


Мы, IT-шники, люди интеллектуальные. Сначала, пусть краткий, но логический и этический анализ. Каковы более глубокие причины происходящего, и соответственно, что на самом деле следует делать?

И как говаривали римляне, Qui prodest?
Всего голосов 165: ↑95 и ↓70+57
Комментарии392

Хроника противостояния Рамблера и Nginx (обновлено 10 июня 2020)

Время на прочтение3 мин
Количество просмотров167K


12 декабря 2019 из твиттера сотрудника Nginx стало известно, что в офисе компании прошел обыск в рамках уголовного дела по статье 146 УК РФ «Нарушение авторских и смежных прав». Претензии предъявила компания Рамблер, хотя формально обвинителем стала Lynwood Investments CY Ltd, которой передали на это права. Последняя связана с совладельцем Rambler Group Александром Мамутом.

Вот как развивались события.
Читать дальше →
Всего голосов 135: ↑131 и ↓4+198
Комментарии267

Корпорация F5 Networks рассылает своим клиентам письма, в которых информирует о текущей ситуации с NGINX

Время на прочтение2 мин
Количество просмотров59K

Reddit-пользователь m8r-1975wk, работающий в компании, которая сотрудничает с корпорацией F5 Networks, опубликовал письмо, пришедшее в рассылке от F5.

Рейтинг данного пользователя соответствует уровню обычного вменяемого участника reddit: карма его публикаций находится в пределах 1400, а карма комментариев — вблизи показателя 5700.
Читать дальше →
Всего голосов 51: ↑50 и ↓1+77
Комментарии146

Ближайшие события

В 2011 году уже обсуждался вопрос, кому принадлежит Nginx — Игорю Сысоеву или «Рамблеру»

Время на прочтение1 мин
Количество просмотров45K

Примерно спустя десятилетие после начала работы над своим open-source-проектом Игорь Сысоев в июле 2011 года создал компанию «Nginx». К веб-серверу, ставшему к тому времени одним из самых популярных в мире, ожидаемо проявили интерес частные инвесторы и осенью того же года компания Сысоева привлекла инвестиции в размере 3 миллионов долларов. Треть акций компании приобрели фонды BV Capital, Runa Capital и MSD Capital.

В «Рамблере» тогда заявили, что не претендуют на эти деньги.
Читать дальше →
Всего голосов 84: ↑79 и ↓5+106
Комментарии149

Atlas Shrugged, или поворот не туда

Время на прочтение2 мин
Количество просмотров30K
image

Самое дорогое, что есть у каждого человека — его жизнь и время, отпущенное ему. Каждый распоряжается этими ресурсами по-своему. Нет второго шанса, нельзя родиться заново, часы не отмотать назад. Игорь Сысоев день за днем почти 20 лет своей жизни посвящал кропотливой работе над тем, чтобы подарить людям всего Человечества, пожалуй, лучший веб-сервер из существующих. Игорь совершенно не обязан был публиковать исходники NGINX под свободной лицензией, но он поступил так добровольно, это был его вклад в изменение нашего Мира к лучшему.

Вряд ли Игорь думал в тот день, когда публиковал исходники в первый раз, что open source поможет ему стать долларовым миллиардером. Наверное не думал он и о том, как когда-нибудь однажды попадет в один ряд с другими отцами-основателями сети Интернет, такими как Тим Бернс Ли, Пол Бэран или Брюстер Кейл. А сбылось это: на сегодняшний день по данным Netcraft, число сайтов, обслуживаемых nginx, превысило 447 миллионов. И вы тоже можете использовать для своего сайта этот веб-сервер, это произведение современного искусства, причем совершенно бесплатно!

Поэтому в конечном итоге, деньги, которые Игорь Сысоев счастливым образом получил, были честно заработаны его собственными кровью и потом (а не на горе и страдании или рабском труде других людей), он их заслужил! Его Филдсовская или Нобелевская премия Мира если хотите…

В бизнесе всегда возникают конфликты и трения, его суть — в конкуренции. Но сейчас неопределенный круг вполне конкретных людей хочет не конкурента в честной рыночной борьбе победить, а хочет эта группировка заслуги Игоря Сысоева втоптать в грязь, обесценить, филантропа выставить вором, а его награду присвоить себе по праву силы. Причем сделать это пытаются не в порядке добросовестного заявителя — в арбитражном суде, а самым грязным способом в духе 90х, с привлечением ресурса силовых структур.
Читать дальше →
Всего голосов 180: ↑170 и ↓10+208
Комментарии152

Позиция инженерной команды Okko по событиям, связанным с Nginx

Время на прочтение2 мин
Количество просмотров49K
Мы, инженерная команда Okko, полностью поддерживаем открытое ПО и в сегодняшней ситуации с Игорем Сысоевым выступаем на стороне IT-сообщества.

Как вы знаете, в прошедшие два года у Окко сменились акционеры, однако, до сих пор это не влияло на нашу работу, так как акционеры предоставляли нам свободу действий. История с NGINX стала полной неожиданностью для всех нас. Порция ненависти досталась заодно и нам, как онлайн-сервису, входящему теперь в Rambler Group.

Тем не менее, увольняться и бросать наш сервис, который мы строили без малого 10 лет, мы не хотим, и собираемся продолжать развивать его дальше. Причина этого — наша ответственность перед миллионами простых пользователей сервиса, 90% которых не знает даже, что такое веб-сервис, и наше огромное желание показывать им лучший футбол и фильмы.

Как уже сообщалось в СМИ, до конца года ожидается разбор ситуации среди акционеров, а мы пока с искренним волнением и болью следим за развитием ситуации и рассчитываем на благополучный ее исход во благо всего IT-сообщества. Искренне надеемся, что вы разберетесь в ситуации и не будете вымещать на нас и нашем сервисе Okko свою злобу и раздражение.
Читать дальше →
Всего голосов 164: ↑115 и ↓49+113
Комментарии208

Что на самом деле значит наезд Rambler Group на Nginx и к чему готовиться онлайн-индустрии

Время на прочтение3 мин
Количество просмотров49K
В посте «Что значит наезд Rambler Group на Nginx и основателей и как это отразится на онлайн-индустрии» deniskin привёл четыре возможных последствия этой истории для российской интернет-индустрии:

  • Ухудшение инвестиционной привлекательности стартапов из России.
  • Стартапы будут чаще инкорпорироваться не в России.
  • В стремлении государства контролировать важный онлайн-бизнес больше нет никаких сомнений.
  • Компрометация HR-бренда Rambler Group.

Всё перечисленное — не последствия, а, скорее всего, причины атаки «Рамблера» на Nginx. Точнее, это описание условий, в которых уже существует российская онлайн-индустрия — условий, в которых атаки, подобные этой — не ошибка, не случайность, а закономерность.

  1. Инвестиционный климат в России давно плохой;
  2. стартапы (и не только), если есть возможность, давно инкорпорируются не в России;
  3. в стремлении государства контролировать важный онлайн-бизнес давно нет никаких сомнений;
  4. бренд «Рамблера» давно скомпрометирован.

Иными словами, пирог — в смысле мест в экономике, откуда ещё можно вытрясти денег — скукоживается всевозрастающими темпами, а разинутых ртов меньше не становится. Как следствие — борьба за каждый кусок обостряется.

Так что пытаться разбудить «Рамблер», чтобы сообщить, что они обосрались не ведают, что творят, бесполезно — они не спят, и очень даже ведают.

Напугать их списком возможных последствий для онлайн-индустрии в России не получится, потому что это давно уже не гипотетическая возможность, а объективная реальность. И реальность эта уже не следствие, а причина разгоняющегося беспредела.

Отстоять Nginx и Игоря Сысоева, возможно, и получится. Как получилось, например, недавно отстоять Ивана Голунова. Но это частный, пусть и счастливый, случай. Устоявшейся практики фальсификации уголовных дел это никак не отменяет.

Так и исход атаки на Nginx и Сысоева, каким бы он ни был, условий, в которых она созрела и произошла, не изменит.
Читать дальше →
Всего голосов 147: ↑134 и ↓13+167
Комментарии142

[Обновление] Наших бьют, а мы будем молчать?

Время на прочтение4 мин
Количество просмотров52K
Касательно обысков в офисе nginx и аресте Игоря Сысоева на хабре уже написано и сделан подробный разбор, я о том же, но с другой стороны...

Что же это делается, братцы? Вон оно как журналисты встали стеной за Голунова. А мы чем хуже?

Это же беспредел какой-то, или просто позор чистой воды. То ли берега попутали, то ли нам показывают, кто в доме хозяин. Бездари за копейку используют чужие таланты — мы к этому давно привыкли. Таланту много не надо, дай творить, ну и на поесть кроху.

Но теперь им и этого мало! Мяса им подавай, с кровью! Ведь, как повезло, у нас в стране много талантов, всех не зарубишь — народятся ещё, не сегодня, так завтра. Считай неисчерпаемый ресурс.
Не благодаря, а вопреки!
Читать дальше →
Всего голосов 133: ↑108 и ↓25+123
Комментарии191

Что значит наезд Rambler Group на Nginx и основателей и как это отразится на онлайн-индустрии

Время на прочтение5 мин
Количество просмотров141K
Сегодня российский интернет буквально взорвался от новости об обысках в московском офисе Nginx — всемирно известной IT-компании с российскими корнями. Спустя 15 лет Rambler Group вдруг вспомнила, что бывший сотрудник компании программист Игорь Сысоев разработал популярное во всем мире программное обеспечение для управления веб-серверами. По разным данным Nginx установлено на трети всех мировых веб-серверов, а сама компания была продана в марте этого года американской F5 Networks за $670 млн.
Читать дальше →
Всего голосов 308: ↑298 и ↓10+423
Комментарии524

Вклад авторов