Linux за българи: Форуми

Linux секция за напреднали => Хардуерни и софтуерни проблеми => Темата е започната от: wfw в Nov 29, 2017, 15:55



Титла: apache2 динамични виртуални хостове + SNI + Lets Encrypt?
Публикувано от: wfw в Nov 29, 2017, 15:55
Здравейте,

най-общо казано искам да си пусна един уеб сървър, на който да си направя няколко (хиляди) HTTPS сайта, като всеки си има отделен VHOST. В идеалния случай, конфигурацията ще приема новите VHOST-ове без рестарт на уеб сървъва.

Ако сайтовете работят на HTTP няма никакъв проблем, ползваме mod_vhost_alias:

https://httpd.apache.org/docs/2.4/vhosts/mass.html

Не обичам, когато в документацията на HTTPD нещо е написано с червено: mod_rewrite is not the best way to configure virtual hosts. You should first consider the alternatives before resorting to mod_rewrite. See also the "how to avoid mod_rewrite document.
Затова изключвам тази опция.

mod_macro може да ми направи конфигурацията четима, но не решава проблема ми, защото след създаването на всеки VHOST ще се налага рестарт на уеб сървъра, а и редакция на конф. файл, което създава предпоставки за "фатална" грешка :)

Главния проблем е, че искам HTTPD да търси за SSLCertificateFile когато дойде заявка, а той го прави по време на първоначалното зареждане.

Обмислям и вариант с HAPROXY, който го играе SSL offloader и след него да пращам HTTP до уеб сървъра, но това е усложняване на схемата, което бих предприел само, ако нямам избор.

Та, някой да е правил нещо подобно? Някоя хитра идея, която му убягва? :)


Титла: Re: apache2 динамични виртуални хостове + SNI + Lets Encrypt?
Публикувано от: n00b в Jan 03, 2018, 00:32
/etc/init.d/apache2 reload

Това не ти ли върши работа?

По-принцип от няколко години ползвам nginx и той действително си презарежда конфигурацията без да спира сървъра. Предполагам, че и при Apache е същото.


Титла: Re: apache2 динамични виртуални хостове + SNI + Lets Encrypt?
Публикувано от: wfw в Jan 03, 2018, 23:09
Искаше ми се да не рестартирам уеб сървъра при добавянето на нов домейн, но явно няма да стане. Вече си написах малък скрипт, през който изпращам съобщения на message broker, който пък ги доставя на един скрипт, стартиран като root, така ще мога да си добавям сайтове през една страничка, т.е. през процес с правата на уеб сървъра.


Титла: Re: apache2 динамични виртуални хостове + SNI + Lets Encrypt?
Публикувано от: makeme в Jan 03, 2018, 23:16
cPanel и подобните си ресват сървъра като добавиш домейн (vhost). Но както всеки сървис на линукс това става за секунда така, че не е проблем.


Титла: Re: apache2 динамични виртуални хостове + SNI + Lets Encrypt?
Публикувано от: wfw в Jan 04, 2018, 01:27
cPanel и подобните си ресват сървъра като добавиш домейн (vhost). Но както всеки сървис на линукс това става за секунда така, че не е проблем.

cPanel влачи един уеб сървър, стартиран с root. Не ми се прекомпилира apache за тая работа, не ми се занимава с CGI + SUID, а и не съм го правил и шанса да го напиша не както трябва е голям :) Опитвам се да имам сравнително чиста среда - само пакети от текущия дебиан и малко код. Е, вече има rabbitmq в системата, но го ползвам и за други неща. Идеален е за RPC (надявам се).