แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™ Angie 1.5.0 แžŠแŸ‚แž›แž‡แžถแžŸแž˜แžšแž”แžŸแŸ‹ Nginx แžšแž”แžŸแŸ‹แžšแžปแžŸแŸ’แžŸแŸŠแžธ

แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ HTTP แžŠแŸ‚แž›แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžแŸ’แž–แžŸแŸ‹ แž“แžทแž„แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸแž”แŸ’แžšแžผแž€แžŸแŸŠแžธแž–แž แžปแž–แžทแž’แžธแž€แžถแžš Angie 1.5.0 แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž–แž•แŸ’แžŸแžถแž™ แžŠแŸ‚แž›แž‡แžถแž•แŸ’แž›แžผแžœแž”แŸ†แž”แŸ‚แž€แž–แžธ Nginx แžŠแŸ„แž™แž€แŸ’แžšแžปแž˜แžขแžแžธแžแžขแŸ’แž“แž€แžขแž—แžทแžœแžŒแŸ’แžแž“แŸแž‚แž˜แŸ’แžšแŸ„แž„แžŠแŸ‚แž›แž”แžถแž“แž…แžถแž€แž…แŸแž‰แž–แžธแž€แŸ’แžšแžปแž˜แž แŸŠแžปแž“แž”แžŽแŸ’แžแžถแž‰ F5 แŸ” แž€แžผแžŠแž”แŸ’แžšแž—แž–แžšแž”แžŸแŸ‹ Angie แž˜แžถแž“แž“แŸ…แž€แŸ’แžšแŸ„แž˜แžขแžถแž‡แŸ’แž‰แžถแž”แŸแžŽแŸ’แžŽ BSD แŸ” แž‚แž˜แŸ’แžšแŸ„แž„แž“แŸแŸ‡แž”แžถแž“แž‘แž‘แžฝแž›แžœแžทแž‰แŸ’แž‰แžถแž”แž“แž”แžแŸ’แžšแž“แŸƒแž—แžถแž–แž†แž”แž‚แŸ’แž“แžถแž‡แžถแž˜แžฝแž™แž”แŸ’แžšแž–แŸแž“แŸ’แž’แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแžšแžปแžŸแŸ’แžŸแŸŠแžธ Red OS, Astra Linux Special Edition, Rosa Chrome Server, Alt แž“แžทแž„ FSTEC แž€แŸ†แžŽแŸ‚ Alt แŸ”

แž€แžถแžšแžขแž—แžทแžœแžŒแŸ’แžแž“แŸแž€แŸ†แž–แžปแž„แžแŸ’แžšแžผแžœแž”แžถแž“แž‚แžถแŸ†แž‘แŸ’แžšแžŠแŸ„แž™แž€แŸ’แžšแžปแž˜แž แŸŠแžปแž“ Web Server แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแžแžกแžพแž„แž“แŸ…แžšแžŠแžผแžœแžŸแŸ’แž›แžนแž€แžˆแžพแž‡แŸ’แžšแžปแŸ‡แž†แŸ’แž“แžถแŸ† 2022 แž“แžทแž„แž‘แž‘แžฝแž›แž”แžถแž“แž€แžถแžšแžœแžทแž“แžทแž™แŸ„แž‚แž…แŸ†แž“แžฝแž“ 1 แž›แžถแž“แžŠแžปแž›แŸ’แž›แžถแžšแŸ” แž€แŸ’แž“แžปแž„แž…แŸ†แžŽแŸ„แž˜แžŸแž แž˜แŸ’แž…แžถแžŸแŸ‹แž€แŸ’แžšแžปแž˜แž แŸŠแžปแž“ Web Server แž˜แžถแž“ Valentin Bartenev (แž”แŸ’แžšแž’แžถแž“แž€แŸ’แžšแžปแž˜แžŠแŸ‚แž›แž”แž„แŸ’แž€แžพแžแž•แž›แžทแžแž•แž› Nginx Unit), Ivan Poluyanov (แžขแžแžธแžแž”แŸ’แžšแž’แžถแž“แžขแŸ’แž“แž€แžขแž—แžทแžœแžŒแŸ’แžแž“แŸแž•แŸ’แž“แŸ‚แž€แžแžถแž„แž˜แžปแžแž“แŸ… Rambler แž“แžทแž„ Mail.Ru), Oleg Mamontov (แž”แŸ’แžšแž’แžถแž“แž€แŸ’แžšแžปแž˜แž‚แžถแŸ†แž‘แŸ’แžšแž”แž…แŸ’แž…แŸแž€แž‘แŸแžŸ NGINX Inc) แž“แžทแž„ Ruslan Ermilov (ru@FreeBSD.org) แŸ”

แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแž“แŸ…แž€แŸ’แž“แžปแž„แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™ Angie 1.5.0แŸ–

  • แž˜แŸ‰แžผแžŒแžปแž› http_acme แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แŸ” แžœแžถแžแŸ’แžšแžผแžœแž”แžถแž“แžšแž…แž“แžถแžกแžพแž„แžŠแžพแž˜แŸ’แž”แžธแž’แŸ’แžœแžพแžŸแŸ’แžœแŸแž™แž”แŸ’แžšแžœแžแŸ’แžแžทแž€แž˜แŸ’แž˜แž€แžถแžšแž‘แž‘แžฝแž›แž”แžถแž“ แž“แžทแž„แž”แž“แŸ’แžแžœแžทแž‰แŸ’แž‰แžถแž”แž“แž”แžแŸ’แžšแžŠแŸ„แž™แž”แŸ’แžšแžพแž–แžทแž’แžธแž€แžถแžš ACME (Automatic Certificate Management Environment) แžŠแŸ‚แž›แž”แŸ’แžšแžพแžŠแŸ„แž™แžขแžถแž‡แŸ’แž‰แžถแž’แžšแžœแžทแž‰แŸ’แž‰แžถแž”แž“แž”แžแŸ’แžš Let's EncryptแŸ” แž“แŸ…แž–แŸแž›แž”แŸ’แžšแžพ http_acme แžขแŸ’แž“แž€แž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แž˜แžทแž“แž…แžถแŸ†แž”แžถแž…แŸ‹แž–แŸ’แžšแžฝแž™แž”แžถแžšแž˜แŸ’แž—แžขแŸ†แž–แžธแž€แžถแžšแž”แž“แŸ’แžแžœแžทแž‰แŸ’แž‰แžถแž”แž“แž”แžแŸ’แžšแž‘แŸแŸ” แž˜แŸ‰แžผแžŒแžปแž›แž“แžนแž„แž‘แž‘แžฝแž›แž”แžถแž“แžœแžทแž‰แŸ’แž‰แžถแž”แž“แž”แžแŸ’แžšแž…แžถแŸ†แž”แžถแž…แŸ‹แžŠแŸ„แž™แžŸแŸ’แžœแŸแž™แž”แŸ’แžšแžœแžแŸ’แžแžทแž–แžธ Let's Encrypt แžฌแžŸแŸแžœแžถแž€แž˜แŸ’แž˜แž•แŸ’แžŸแŸแž„แž‘แŸ€แžแžŠแŸ‚แž›แž‚แžถแŸ†แž‘แŸ’แžšแž–แžทแž’แžธแž€แžถแžš ACMEแŸ” http { resolver 127.0.0.1:53; # แžแŸ’แžšแžผแžœแž€แžถแžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแžŽแŸ‚แž“แžถแŸ† 'acme_client' แžงแž‘แžถแž แžšแžŽแŸ acme_client https://acme-staging-v02.api.letsencrypt.org/directory; server { listen 80; listen 443 SSL; แžˆแŸ’แž˜แŸ„แŸ‡โ€‹แž˜แŸ‰แžถแžŸแŸŠแžธแž“โ€‹แž”แž˜แŸ’แžšแžพ example.com www.example.com; แžงแž‘แžถแž แžšแžŽแŸ acme; แžœแžทแž‰แŸ’แž‰แžถแž”แž“แž”แžแŸ’แžš ssl_cert_example $acme_cert_example; แž€แžผแž“แžŸแŸ„โ€‹แžœแžทแž‰แŸ’แž‰แžถแž”แž“แž”แžแŸ’แžš ssl_cert_key $acme_cert_example; } }
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแžŽแŸ‚แž“แžถแŸ† auto_redirect แžŠแžพแž˜แŸ’แž”แžธแž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แžฅแžšแžทแž™แžถแž”แžแž”แŸ’แžแžผแžšแž‘แžทแžŸแžŠแŸ„แž™แžŸแŸ’แžœแŸแž™แž”แŸ’แžšแžœแžแŸ’แžแžทแž€แŸ’แž“แžปแž„แžŸแŸ’แžแžถแž“แž—แžถแž–แžŠแŸ‚แž›แžแž˜แŸ’แž›แŸƒแž“แŸ…แž€แŸ’แž“แžปแž„แž€แžถแžšแžŽแŸ‚แž“แžถแŸ† "แž‘แžธแžแžถแŸ†แž„" แž”แž‰แŸ’แž…แž”แŸ‹แžŠแŸ„แž™แžแžฝแžขแž€แŸ’แžŸแžš "/" แŸ” แž”แŸ’แžšแžŸแžทแž“แž”แžพแž€แžถแžšแžŽแŸ‚แž“แžถแŸ† "auto_redirect" แžแŸ’แžšแžผแžœแž”แžถแž“แž€แŸ†แžŽแžแŸ‹แž‘แŸ…แž‡แžถ "on" แž“แŸ„แŸ‡แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸแž“แžนแž„แžขแž“แžปแžœแžแŸ’แžแž€แžถแžšแž”แž‰แŸ’แž‡แžผแž“แž”แž“แŸ’แžแžŸแž˜แŸ’แžšแžถแž”แŸ‹แžŸแŸ†แžŽแžพ URI แžŠแŸ‚แž›แž˜แžทแž“แž”แž‰แŸ’แž…แž”แŸ‹แžŠแŸ„แž™ "/" (แž€แŸ’แž“แžปแž„แžงแž‘แžถแž แžšแžŽแŸ แžŸแŸ†แžŽแžพแž‘แŸ… "/prefix" แž“แžนแž„แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžแžผแžšแž‘แžทแžŸแž‘แŸ… "/prefix/ ") แž‘แžธแžแžถแŸ†แž„ /prefix/ { auto_redirect on; }
  • แž”แžถแž“แž•แŸ’แžแž›แŸ‹แž›แž‘แŸ’แž’แž—แžถแž–แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แž–แŸแž›แžœแŸแž›แžถ epochal แž‡แŸ†แž“แžฝแžŸแžฑแŸ’แž™แž–แŸแž›แžœแŸแž›แžถ ISO 8601 แž“แŸ…แž–แŸแž›แž“แžถแŸ†แž…แŸแž‰แž˜แŸ‰แŸ‚แžแŸ’แžšแž‘แŸ…แž”แŸ’แžšแž–แŸแž“แŸ’แž’แžแŸ’แžšแžฝแžแž–แžทแž“แžทแžแŸ’แž™ Prometheus แžฌแž‘แŸ… JSON API แŸ” แžŠแžพแž˜แŸ’แž”แžธแž”แŸ’แžšแžพแž–แŸแž›แžœแŸแž›แžถ epochal แž”แŸ’แžšแžพแž”แŸ‰แžถแžšแŸ‰แžถแž˜แŸ‰แŸ‚แžแŸ’แžš "date=epoch" แž“แŸ…แž–แŸแž›แžŸแŸ’แž“แžพแžŸแžปแŸ†แŸ”
  • API แžŸแŸ’แžแžทแžแžทแž”แžถแž“แžขแž“แžปแžœแžแŸ’แžแžŸแŸ’แžแžถแž“แž—แžถแž– "แž€แžถแžšแž„แžพแž”แžกแžพแž„แžœแžทแž‰" แžแŸ’แž˜แžธ แžŠแŸ„แž™แž”แž„แŸ’แž แžถแž‰แžแžถ แžŸแŸ’แžšแž”แžแžถแž˜แž€แžถแžšแž€แŸ†แžŽแžแŸ‹ slow_start แžŸแŸ’แžแžถแž“แž—แžถแž–แž“แŸƒแž˜แŸ‰แžถแžŸแŸŠแžธแž“แžกแžพแž„แž›แžพแž€แŸ†แž–แžปแž„แž„แžพแž”แžกแžพแž„แžœแžทแž‰แž”แž“แŸ’แžแžทแž…แž˜แŸ’แžแž„แŸ—แž”แž“แŸ’แž‘แžถแž”แŸ‹แž–แžธแž€แžถแžšแž”แžšแžถแž‡แŸแž™แŸ”
  • แž€แžถแžšแž”แž‰แŸ’แž‡แžถแž€แŸ‹แžขแžถแž‚แžปแž™แž˜แŸ‰แž„แŸ‹ "-V" แž“แŸ…แž›แžพแž”แž“แŸ’แž‘แžถแžแŸ‹แž–แžถแž€แŸ’แž™แž”แž‰แŸ’แž‡แžถแž“แžนแž„แž’แžถแž“แžถแžแžถแž€แŸ†แžŽแŸ‚ nginx แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž‚แŸ’แž“แžถแž“แžนแž„ Angie build แž”แž…แŸ’แž…แžปแž”แŸ’แž”แž“แŸ’แž“แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž แžถแž‰แŸ”
  • แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแžŠแŸ‚แž›แž”แžถแž“แž”แŸ’แžšแž˜แžผแž›แž•แŸ’แžแžปแŸ†แž“แŸ…แž€แŸ’แž“แžปแž„ nginx 1.25.4 แžแŸ’แžšแžผแžœแž”แžถแž“แž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแž–แžธแžƒแŸ’แž›แžถแŸ†แž„แž‚แž˜แŸ’แžšแŸ„แž„ nginx แŸ”
  • แž€แž‰แŸ’แž…แž”แŸ‹แžŸแž˜แŸ’แžšแžถแž”แŸ‹ FreeBSD 13 (arm64) แž“แžทแž„ RED OS 8 (x86-64) แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแžแžกแžพแž„แŸ”
  • แž€แž‰แŸ’แž…แž”แŸ‹แž”แž“แŸ’แžแŸ‚แž˜แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž˜แŸ‰แžผแžŒแžปแž› angie-module-otel (NGINX Native OpenTelemetry) แŸ” แž€แž‰แŸ’แž…แž”แŸ‹ angie-module-opentracing แžแŸ’แžšแžผแžœแž”แžถแž“แž’แŸ’แžœแžพแž”แž…แŸ’แž…แžปแž”แŸ’แž”แž“แŸ’แž“แž—แžถแž–แž‘แŸ… nginx-opentracing 0.34.0 แŸ”

แž”แŸ’แžšแž—แž–: opennet.ru

แž”แž“แŸ’แžแŸ‚แž˜แž˜แžแžทแž™แŸ„แž”แž›แŸ‹