Den nye versjonen av den høytytende HTTP-serveren og multiprotokoll proxyserveren Angie 1.8.0 er lansert, avledet fra Nginx av en gruppe tidligere utviklere fra F5 Network. Kildekoden til Angie er tilgjengelig under BSD-lisens. Prosjektet har fått sertifikater for kompatibilitet med russiske operativsystemer som Red OS, Astra Linux Special Edition, Rosa Chrome Server, Alt og FSTEK-versjonen av Alt.
Utviklingen ledes av selskapet «Web-server», som ble etablert høsten 2022 og har mottatt investeringer på 1 million dollar. Blant medeierne i Web-server er: Valentin Bartenjev (teamleder for utviklingen av produktet Nginx Unit), Ivan Polujanov (tidligere leder for frontend-utviklerne i Rambler og Mail.Ru), Oleg Mamontov (leder for teknisk støtte i NGINX Inc) og Ruslan Ermilov (ru@FreeBSD.org).
Endringer i Angie 1.8.0:
- Mulighetene til http_acme-modulen, som er designet for å automatisere innhenting og oppdatering av sertifikater fra sertifiseringsmyndigheten Let’s Encrypt, som bruker ACME-protokollen (Automatic Certificate Management Environment), er utvidet:
- Støtte for DNS-01 verifiseringsmetoden, som er nødvendig for å motta sertifikater med maskeringer som dekker en gruppe underdomener (for eksempel *.example.com), er lagt til.
- Direktivet «acme_hook» er lagt til, som gjør det mulig å konfigurere anrop til eksterne applikasjoner med håndteringsprosesser for å bekrefte eierskap til domenet. Slike håndtere kan brukes til integrasjon med eksterne tjenester og DNS-leverandører.
- For å forenkle feilsøking, er ytterligere informasjon lagt til loggen, slik som årsaken til sertifikatoppdateringen, en fullstendig liste domener, klientens konto-ID, informasjon om inaktivitet og det verifiserte domenet.
- Et parameter «account_key» for gjenbruk av eksisterende tilgangsnøkler er lagt til i direktivet «acme_client», i stedet for automatisk generering av en ny nøkkel. server Muligheten til å spesifisere variabler i direktivet «status_zone», som brukes i modulene stream og http, er implementert. Variablene kan brukes til dynamisk å registrere statistikk knyttet til bestemte virtuelle vertsnavn definert i en «location» eller «server»-blokk. server { listen 80; server_name *.example.com; status_zone $host zone=host_zone:10; location / { proxy_pass http://example.com; } }
- I gzip-kompresjonsmodulen er kompatibilitet med zlib-ng 2.2-biblioteket og nyere versjoner sikret.
- Implementeringen av direktivet max_headers, som begrenser det maksimale antallet HTTP-hoder i en forespørsel, som kan være nyttig for å beskytte mot DoS-angrep, er overført fra prosjektet freenginx.
- Direktivene http3_max_table_capacity og proxy_http3_max_table_capacity er lagt til for å begrense størrelsen på tabellen som brukes til komprimering av hoder i HTTP/3.
- Det er lagt til direktivene http3_max_table_capacity og proxy_http3_max_table_capacity for å begrense størrelsen på tabellen som brukes til komprimering av overskrifter i HTTP/3.
- Støtte for krysskompilering er lagt til — nå kan bygging gjøres uten å måtte kjøre autotest-skript på målplattformen.
- Endringen fra freenginx er overført, som løser problemet med feil ved levering av svar under myk avslutning av prosessorer (gracefully shutdown) — keep-alive-tilkoblinger lukkes nå først etter at tidsavbruddet i direktivet lingering_timeout er utløpt.
- For å få oppdaterte verdier ved bruk av virtuelle verter, er variabelkaching for $ssl_server_name, $ssl_server_cert_type, $ssl_preread_protocol og $ssl_preread_server_name deaktivert i stream-modulen.
- Endringene som ble foreslått i nginx 1.27.3, er overført fra nginx-prosjektets repository.
Kilde: opennet.ru
