httpd rozbudowane o przepisywanie adresów

Serwer httpd w bazowym systemie OpenBSD zastąpił nginx w błyskawicznym tempie. Kod powstał na bazie relayd, jest aktywnie rozwijany i zasłynął z wprowadzenia taga ‚featuritis’, którym autorzy projektu oznaczają funkcjonalności o jakie proszą użytkownicy w sytuacji gdy wykraczają one poza zakres zaplanowany dla httpd.

Takim tagiem oznaczono issue #27 Rewrites. Wszystko jednak wskazuje na to, że doczekamy się tej funkcjonalności.

Na listę mailingową tech@ Reyk Floeter wysłał patch adaptujący kod dopasowującą wzorce z języka Lua na potrzeby httpd. Pierwotnie Reyk protestował przed wprowadzeniem wyrażeń regularnych między innymi ze względu na łatwe doprowadzenie do ataku odmowy świadczenia usługi przez zajęcie zasobów przy rekursywnych dopasowaniach.

Kod zaadaptowany z Lua ma tylko 700 linii i według autora jest przejrzysty, wystarczająco funkcjonalny, posiada stosowną licencję (MIT) oraz pozbawiony jest wspomnianych rekursywnych dopasowań.

Na chwilę obecną patch czeka na testy, zapewne niedługo trafi do bazowego systemu. Możliwe, że kod zaadaptowany z Lua zostanie wprowadzony jako generalna biblioteka w systemie.

Podczas BSDCan 2015 Reyk przedstawił również historię samego httpd, prezentacja została nagrana. Zainteresowanych odsyłam do jej pierwszej oraz drugiej części.

Skomentuj

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *