[about] [index] [prev] [2021-09-30 11:13:55+03:00] [6f81b22ce2138552e3258cac5a04f6221f21cd7f]
Topics: [web]

Документация к nginx, lighttpd

https://nginx.org/en/download.html
Много я какахами поливал nginx за то, что документацию в tarball-ы
не включают и не предоставляют её никак, кроме как просто на сайте
последней версии. Но тут вчера увидел что есть репозиторий с этим
самым сайтом, со всей документацией. Да, это не так удобно, немного
геморроя (хотя, если дока вся из себя типа append-only, обратно
совместимый API, то нормально), но всё же можно одной командой
получить всю доку по нему. Зеркалирование сайта хоть и делается
одной командной, но это нечестный хак, который не будет работать
если кто-то догадается это разместить на "всеми любимых" Cloudflare
или подобных CDN-ах.

Между тем, документация lighttpd в tarball-е, и жутко не полна и даже не
подходит, outdated, о чём они честно предупреждают. Где-то репозиториев
с актуальной документацией -- не нашёл. Зеркалировать wiki Redmine-а --
тоже не очень приятно, всё же не статический сайт как у nginx. В общем в
моём мире (в голове) всё перевернулось: теперь у lighttpd довольно всё
убого, а nginx дока это решаемая проблема.

И альтернатив то нет толком. Apache -- вообще не рассматриваю. Что-то
сильно минималистичное типа minihttpd, thttpd и прочих -- пристально не
вглядывался, но вот точно и наверняка их возможностей не хватит. А кроме
lighttpd и nginx как-то больше ничего и не остаётся. Но уж жутко мне не
нравится формат конфигов nginx-а (хотя Apache ещё больше).

Но сейчас вообще ещё мысли просто использовать самописный сервер на Go и
прямо внутрь него вшивать все мои хотелки и желания. Производительности
для преобладающего большинства задач (даже не домашних) -- в нём хватит
точно. Реализовать всякие rewrite, SNI, CGI без проблем можно: грубо
говоря, не намного больше строк кода будет чем строк в конфиге. Аналог
mod_compress тоже не проблема, ETag-и и прочее. И на каждый чих просто
перекомпилировать, что в Go делается стремглав. А то сейчас думаю про
Metalink/HTTP решение и тут или писать на Си свой модуль или на Lua
попробовать всю эту логику.

[leave comment]