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

Nginx *

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

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

Настраиваем минимальный WEB-сервер на Repka Pi 3. NGINX + PHP-FPM + MySQL и ставим Wordpress

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 4.5K

В этой статье я расскажу как установить на Repka Pi 3 полноценный WEB сервер на Nginx с php-fpm и MySQL для того, чтоб в конечном счете установить WordPress и начать делать и размещать Ваш сайт на данной платформе. Ставить будем на родную ОС Repka Pi от 11.12.23 (последняя актуальна прошивка на момент написания статьи).

Читать далее
Всего голосов 13: ↑11 и ↓2 +9
Комментарии 22

Новости

freenginx: комментарии от Макса Дунина

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 20K

14-го февраля Максим Дунин анонсировал форк nginx - freenginx (freenginx.org). Максим - старейший сотрудник nginx и core-контрибьютор nginx со времен Рамблера. Максим любезно согласился на интервью, вопросы задавал Алексей Рыбак (@rybakalexey), DevHands.io.

[АР] Почему ты решил форкнуть nginx и запустить проект freenginx? Почему ты делаешь акцент на свободе, в чём был несвободен nginx внутри F5?

[МД] Я в течении почти двух лет пытался избежать создания форка и безвозмездно занимался улучшением nginx - потому что считал и считаю, что создание форков не полезно для проекта. К сожалению, в F5 решили отказаться от наших договорённостей, и предпочли делать с проектом то, что они считают нужным, игнорируя как существующие политики проекта, так и мнение разработчиков, в том числе моё. Поэтому я создал отдельный проект, в котором позиция разработчиков гарантировано будет определяющей.

Читать далее
Всего голосов 89: ↑87 и ↓2 +85
Комментарии 71

Как выдавать бесплатные SSL сертификаты с помощью certbot, Nginx и Docker

Уровень сложности Средний
Время на прочтение 5 мин
Количество просмотров 13K

Всем привет! Одна из моих рутинных задач - это подъем новых проектов и микросервисов в облаках. Для этого практически всегда нужны домены и поддомены с наличием SSL сертификата. У меня выработался подход, с помощью которого я автоматизировал процесс выдачи сертификатов с помощью certbot. О чём и хочу рассказать.

Читать далее
Всего голосов 18: ↑15 и ↓3 +12
Комментарии 27

Миграция микросервисной архитектуры на API Gateway

Уровень сложности Простой
Время на прочтение 10 мин
Количество просмотров 11K

Микросервисная архитектура Amediateka была спроектирована более 6 лет назад предыдущей командой разработки. С тех пор добавилось много новых микросервисов, но фундаментальная часть архитектуры осталась прежней. В этом году мы решили внедрить несколько глобальных изменений, одно из которых - API Gateway. Статья расскажет о том, что это такое, какие преимущества дает, как просто и безопасно мигрировать функционирующую систему на API Gateway и сделает обзор готовых решений.

Читать далее
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 2

Истории

Django, PostgreSQL, Gunicorn/uWSGI, Nginx

Уровень сложности Сложный
Время на прочтение 12 мин
Количество просмотров 10K

Подробное описание шагов при деплое web-проекта на Django с PostgreSQL, Nginx, Gunicorn.

Задачи статьи - агрегировать информацию из мануалов по деплою, избавить читателя от повторений ошибок и описать теоретически, для чего делаются те или иные шаги, чтобы избежать бездумного копирования и вопросов "почему у меня не работает".

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 4

Logstash, Manticore, Nginx и Symfony: сбор, агрегация и быстрый поиск логов

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

Мысль о централизованном мониторинге логов хранилась в моей голове много лет, но реализовать ее я смог только совсем недавно. Рассказываю о настройке и подводных камнях связки Logstash + Manticore + Nginx + Symfony.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 5

Nginx: шпаргалка

Уровень сложности Простой
Время на прочтение 2 мин
Количество просмотров 19K

Шпаргалка по основным секциям Nginx, которые следует держать под рукой. Ниже приведены самые частые функции: включение SSL, переадресация, раздача статики и т.д.

Читать далее
Всего голосов 33: ↑17 и ↓16 +1
Комментарии 18

TLS Client Hello — перехватываем и парсим — Nginx + Lua / Go

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 3K

Возникла на днях достаточно интересная задачка - по образу сайта https://www.howsmyssl.com/ получить на страничке список Cipher Suites которые при TLS Handshake клиент передает в своем Client hello.

А заодно обдумать инструмент, который позволит работать с другими заголовками, в частности - Proxy-Connection

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 1

Размещение телеграмм бота (Aiogram3) на VPS/VDS

Уровень сложности Средний
Время на прочтение 4 мин
Количество просмотров 5.1K

Расскажу как просто задеплоить телеграмм бота на Aiogram 3 с webhook на VPS/VDS. Посмотреть видео версию, которую я выложил, можно на YouTube

Также покажу установку двух типов сертификатов SSL: ...

C Nginx и без него ...

Читать далее
Всего голосов 9: ↑7 и ↓2 +5
Комментарии 9

Разворачиваем и заворачиваем в docker проект ASP.NET core на Ubuntu в связке с PostgreSQL

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 8.9K

На просторах интернета заметил, что довольно мало статьей про ASP.NET под Linux. К сожалению, новички вроде меня копаются часами в поисках нужной информации, поэтому в этой статье мы вместе развернём минимальное приложение ASP.NET core под Linux в среде Ubuntu и в связке с PostgreSQL и с котиками на сервере nginx, а также упакуем всё в docker контейнеры. В ходе этой статьи мы разберём некоторые консольные команды для ежедневного пользования.

Приступить к чтению
Всего голосов 10: ↑7 и ↓3 +4
Комментарии 20

Nginx и Keycloak: Идеальное сочетание для обеспечения безопасности приложений

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 13K

В современной быстро меняющейся цифровой среде обеспечение надежной безопасности на каждом этапе взаимодействия с пользователем имеет первостепенное значение. Хотя существует множество инструментов для защиты наших приложений, найти идеальное сочетание между ними может быть непросто. На помощь приходит динамичный дуэт: Nginx и Keycloak. В паре эти инструменты обеспечивают мощное решение по обеспечению безопасности вашего приложения. Nginx, известный своей высокой производительностью и масштабируемостью, в сочетании с надежными механизмами аутентификации и авторизации Keycloak строит крепость, защищающую ваши приложения от несанкционированного доступа. В этой статье мы рассмотрим все тонкости этой привлекательной комбинации и покажем, как можно использовать их общие преимущества для создания надежного и удобного шлюза для ваших приложений.

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

Понимание разницы: Аутентификация vs Авторизация

В сфере безопасности часто встречаются термины "аутентификация" и "авторизация". Хотя они могут звучать похоже и иногда используются как взаимозаменяемые, все же имеют разные значения и функции. Давайте разберемся в каждом из этих терминов, чтобы понять их разницу и важность.

1. Аутентификация

Определение: Аутентификация - это процесс проверки подлинности личности пользователя, системы или приложения. Она отвечает на вопрос: «Вы тот, за кого себя выдаете?»

Как это работает: Наиболее распространенной формой аутентификации является комбинация имени пользователя и пароля. Когда пользователь вводит эти учетные данные, система сравнивает их с сохраненными данными, чтобы подтвердить его личность. Другие методы включают биометрию (например, распознавание отпечатков пальцев или лица), OTP (одноразовые пароли) и аппаратные токены.

Читать далее
Всего голосов 5: ↑3 и ↓2 +1
Комментарии 10

Talkvio — не капибара и не старый пикабу. Модуль серверной индексации для поисковиков для Nginx. Альтернатива Next.js

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 2.5K

Читая такие статьи как про Капибару, мне хочется упомянуть один свой старый/новый проект, в изначальном виде я затеял как проект реставрации старого форума сети Минска (uruchie.org) из далеких 2006-2012 годов, который хранился у меня в замороженном виде последние 10 лет. Не так давно я решил его расконсервировать и заняться реставрацией в свободное время, того, фактически, что осталось еще со времен локальных сетей. 

Я сразу отбросил почти все что было, это старый движок vBulletin - на тот момент крайне перспективный и развивающийся движок форума на PHP, и убрав почти все, оставив только базу данных из 250 000 сообщений и 5000 пользователей начал реализовывать новые концепции которые хотелось видеть. Если кому-то интересно то, кстати, одна из причин гибели такого старого и долгого проекта был именно vBulletin и безопасность.

Ссылка на рабочую версия нового ресурса: https://talkvio.com (заходим, регистрируемся, пишем, предлагаем идеи)

За основу взял что душе угодно для таких целей:

Backend: NodeJS + MySQL + Redis + Manticore (у меня с ним был крайне приятный опыт на других своих старых проектах) + Bash + отдельные модули на Python + Nginx

UI: React

Дальше в статье будет рассказываться как в проекте организован серверный рендеринг исключительно для поисковиков, и как вы можете повторить опыт для своего JS проекта не выполнял почти никаких модификаций проекта на основе пакета Puppeteer + Nginx.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 10

Улучшаем возможности Nginx без затрат на коммерческую подписку (спойлер: с помощью Haproxy)

Уровень сложности Средний
Время на прочтение 16 мин
Количество просмотров 19K

Nginx — прекрасный и надёжный обратный прокси-сервер. Уже много лет он является самым популярным инструментом обслуживания огромного количества веб-сайтов. Но его бесплатная версия имеет ряд ограничений в части работы с серверами-бэкендами. Давайте поговорим об этих ограничениях и о том, можем ли мы, не меняя Nginx как основную платформу, качественно улучшить наши возможности по распределению трафика между бэкендами.

Читать далее
Всего голосов 20: ↑18 и ↓2 +16
Комментарии 33

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

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн

Настройка Nginx multiple reverse proxy для k3s+istio

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 6K

Всем читателям, привет! Хочется поделиться своим опытом по созданию Nginx reverse proxy для интересного кейса.

Есть 1 ip и на него нацелено n доменов
Есть n серверов (за NAT)
Когда пользователь заходит на домен_1 попадает на сервер_1
Когда пользователь заходит на домен_2 попадает на сервер_2
Когда пользователь заходит на домен_n попадает на сервер_n

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 14

Делаем web сервер из старого Android смартфона, без root

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

Главная идея была в том, чтобы проверить возможно ли из старого Android устройства сделать "полноценный" сервер с nginx, php-fpm, MariaDB и запустить на этом Wordpress. Оказывается можно и при этом с хорошим результатом.

Устройство: Xiaomi Mi 4c 2015 года, разблокирован разгрузчик, TWRP, Android 10 (Havoc OS 3.0), Gapps не устанавливались для экономии ресурсов, root отсутствует.

Читать далее
Всего голосов 26: ↑24 и ↓2 +22
Комментарии 19

Многогранный мониторинг Angie, форка веб-сервера nginx

Уровень сложности Средний
Время на прочтение 11 мин
Количество просмотров 6.7K

Здравствуй, дорогой читатель. Меня зовут Дмитрий. Я — системный инженер компании «Веб-сервер». На протяжении моего опыта оказания услуг технической поддержки сначала в компании Nginx, а теперь и в компании разработчика российского веб-сервера Angie, мы отвечаем на очень популярный вопрос: «Как организовать мониторинг состояния веб-сервера?». А вот так.

Читать далее
Всего голосов 23: ↑23 и ↓0 +23
Комментарии 7

Настройка авторизации через ssl сертификат на уровне nginx

Уровень сложности Средний
Время на прочтение 5 мин
Количество просмотров 10K

Привет уважаемые, хабровчане!

Иногда возникает потребность выдать доступ пользователям только к одному веб ресурсу в компании. Самый очевидный вариант сделать это через урезанный VPN, но тут возникают препятствия в виде девайсов, с которых подключаются пользователи, и качество интернета, которым они пользуются. OpenVPN, который мы пробовали использовать для этих целей, не дал желаемого результата, подключение было медленным и нестабильным. Поэтому было найдено альтернативное решение.

Читать далее
Всего голосов 14: ↑14 и ↓0 +14
Комментарии 11

Особенности проксирования через CDN/Websocket/gRPC для обхода блокировок

Уровень сложности Средний
Время на прочтение 15 мин
Количество просмотров 55K

Эта статья — заключительная (наконец‑то!) из моего огромного цикла про недетектируемые инструменты для обхода блокировок. В предыдущих публикациях я упоминал, что клиенты и серверы XRay (форк V2Ray) и Sing‑box при использовании протоколов VLESS/VMess/Trojan могут работать через веб‑сокеты и gRPC, что позволяет подключаться к даже заблокированным Роскомнадзором прокси‑серверам через CDN (content delivery или content distribution network) и дает дополнительные преимущества. Сегодня мы поговорим об этом поподробнее.

Читать далее
Всего голосов 80: ↑78 и ↓2 +76
Комментарии 148

Подробная настройка Content Security Policy (CSP)

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 14K

Content Security Policy (CSP) - это механизм безопасности веб-приложений, который используется для сокращения рисков, связанных с атаками, такими как внедрение скриптов (XSS) и выполнение нежелательного кода (инъекция). CSP позволяет веб-разработчикам указывать браузерам, из каких источников разрешено загружать ресурсы, такие как скрипты, стили, изображения, шрифты и другие элементы.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 3

Деплой приложения с nginx как по нодам

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

Привет, Хабр! В этом материале мы разберем деплой приложения на React, арендуем облачный сервер и настроим nginx. Здесь будет необходимый минимум для фронтенд-разработчика:

  • Заливка проекта на GitHub.
  • Аренда и настройка облачного сервера по SSH.
  • Настройка nginx для раздачи статических файлов.
  • Сжатие бандла.
  • Подключение домена.
  • Настройка HTTPS.
  • Настройка Docker.

Для этого материала также доступна видеоверсия.
Читать дальше →
Всего голосов 45: ↑41 и ↓4 +37
Комментарии 12

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