June 2 2023

ANGIE the fork of NGINX created by former Russian employees fired from F5

Angie is a drop in replacement for NGINX web server which aims to extend the functionality of the original version.

The release of version 1.2.0 of the high-performance HTTP server and multi-protocol proxy server has been announced “Angie”, a fork of Nginx created by a group of former developers of the project who have left F5 Networks.

The reasons we have extensively described in this article, in which the repercussions of political tensions between the USA and Russia forced the American F5 Nerworks to close all its plants in Russia.

NGINX is an extremely popular open source web server known for its high performance, stability, rich functionality, simple configuration, and low resource consumption. It can handle a large number of simultaneous connections with efficient memory management, making it ideal for high-load applications such as website delivery, reverse proxy with caching, load balancing, security, and SSL acceleration. NGINX is used by a large number of high-profile organizations, including Airbnb, Box, Instagram, Netflix, Pinterest, SoundCloud, Zappos, and many more. It is also often used in microservices environments to orchestrate network traffic between services or to serve static content in large-scale web applications.

It is important to mention that just over 2 years ago, Nginx and F5 jointly announced the final acquisition of Nginx by F5 Network Group, a leader in multicloud application services, for a total enterprise value of $670 million.

However, despite the explanations, doubts and questions remain within the open source community regarding this acquisition and the future of Nginx open source solutions. We can already see a certain direction it is taking. The detractors have in fact decided to continue with their own project.

About Angie The developers of the project describe it like this:

Angie is an efficient, powerful and scalable web server, which was derived from nginx by some of its former lead developers, with the intention of extending the functionality far beyond the original version.

Angie is a direct replacement for nginx, so you can use your existing nginx configuration without making changes that break it.

To support the development of the project and continue to support Nginx users in Russia (remember that it was created by Igor Sysoev, a Russian software engineer, and various blocks have been enforced in Russia due to the ongoing conflict with the Ukraine), the Web Server company was created, which received an investment of 1 million dollars.

Among the co-owners of the new company: Valentin Bartenev (head of the team that developed the Nginx Unit product), Ivan Poluyanov (former head of front-end developers at Rambler and Mail.Ru), Oleg Mamontov (head of the support team technician of NGINX Inc.) and Ruslan Ermilov (ru@FreeBSD.org). Zaur Abasmirzoev, former technical director of slow.ru, has been appointed director of the new company. Igor Sysoev, the founder of Nginx, is not involved in the project.

The release of Angie 1.0.0 is based on the nginx 1.23.2 codebase and includes the following changes:

  • Implementation of a RESTful HTTP interface has been added to access basic web server information and client connection statistics, shared memory zones, HTTP requests, HTTP response caching, DNS queries, TCP/UDP sessions created by the stream module and restricted zones implemented using the limit_conn and limit_req modules. Statistics are generated in JSON format. A new “api” directive is provided to enable the RESTful HTTP interface.
  • The "status_zone" directive has been added to the "http" module, which defines the zone for collecting statistics on requests processed in the context of the "server" and "location" directives.
  • The "status_zone" directive has been added to the "stream" module, which defines the zone for collecting TCP and UDP session statistics.
  • The "status_zone" parameter has been added to the "resolve" directive, which defines the zone for accumulating statistics on sent DNS queries.
  • Added $angie_version variable with Angie server version.

Angie is a fork of NGINX that aims to expand functionality far beyond the original version. It can be used as a direct replacement for NGINX, meaning you can use your existing NGINX setup without having to make any significant changes.

Welcome-To-Angie

The first stable release available for installation is Angie 1.0.0. The software is distributed under the BSD 2-Clause “Simplified” license and is freely available on the project's GitHub page. This license permits free commercial use of Angie, as well as modification, distribution and private use.

The Angie web server includes the following built-in modules:

  • http_addition_module: a module that allows text to be added both before and after the body of the HTTP response.
  • http_auth_request_module: a module that implements client authorization based on the result of a subrequest.
  • http_dav_module: a module that extends server functionality to support PUT, DELETE, MKCOL, COPY and MOVE methods.
  • http_flv_module: a module for delivering FLV video streams.
  • http_gunzip_module: a module that allows you to unpack gzip responses for clients that don't support gzip.
  • http_gzip_static_module: a module that sends precompressed gzip files instead of regular files.
  • http_mp4_module - a module for delivering MP4 video streams.
  • http_random_index_module: a module that processes requests with URIs ending with a slash and selects a random page for each request.
  • http_realip_module - a module for changing the client's IP address and other connection parameters.
  • http_secure_link_module: A module to protect links from hotlink attacks.
  • http_slice_module: a module for serving slices of a file.
  • http_ssl_module - a module to provide SSL encryption.
  • http_stub_status_module - a module to get basic server statistics.
  • http_sub_module: A module that finds and replaces a string in the response body.
  • http_v2_module - a module for HTTP/2 support.
  • mail: a mail proxy module.
  • mail_ssl_module: a module for SSL support for mail.
  • stream: a module for TCP/UDP proxy.
  • stream_realip_module: a module for modifying the client's IP address and other TCP/UDP connection parameters.
  • stream_ssl_module: a module to provide SSL encryption for TCP/UDP streams.
  • stream_ssl_preread_module: a module that allows you to read and parse the SSL/TLS protocol while establishing the TCP connection.

Finally, it is mentioned that regarding future plans, there is a significant expansion of the original functionality while maintaining basic compatibility with the Nginx configuration and the ability to use Angie as a replacement for Nginx without significant configuration changes.

Compared to the original NGINX, it is expected to qualitatively improve fault tolerance, increase performance, simplify maintenance, and add additional features for clustered systems.

If you are interested in learning more, you should know that Angie's source code is available under the BSD license and can be found at the following link: https://github.com/webserver-llc/angie

Do you have doubts? Don't know where to start? Contact us!

We have all the answers to your questions to help you make the right choice.

Chat with us

Chat directly with our presales support.

0256569681

Contact us by phone during office hours 9:30 - 19:30

Contact us online

Open a request directly in the contact area.

INFORMATION

Managed Server Srl is a leading Italian player in providing advanced GNU/Linux system solutions oriented towards high performance. With a low-cost and predictable subscription model, we ensure that our customers have access to advanced technologies in hosting, dedicated servers and cloud services. In addition to this, we offer systems consultancy on Linux systems and specialized maintenance in DBMS, IT Security, Cloud and much more. We stand out for our expertise in hosting leading Open Source CMS such as WordPress, WooCommerce, Drupal, Prestashop, Joomla, OpenCart and Magento, supported by a high-level support and consultancy service suitable for Public Administration, SMEs and any size.

Red Hat, Inc. owns the rights to Red Hat®, RHEL®, RedHat Linux®, and CentOS®; AlmaLinux™ is a trademark of AlmaLinux OS Foundation; Rocky Linux® is a registered trademark of the Rocky Linux Foundation; SUSE® is a registered trademark of SUSE LLC; Canonical Ltd. owns the rights to Ubuntu®; Software in the Public Interest, Inc. holds the rights to Debian®; Linus Torvalds owns the rights to Linux®; FreeBSD® is a registered trademark of The FreeBSD Foundation; NetBSD® is a registered trademark of The NetBSD Foundation; OpenBSD® is a registered trademark of Theo de Raadt. Oracle Corporation owns the rights to Oracle®, MySQL®, and MyRocks®; Percona® is a registered trademark of Percona LLC; MariaDB® is a registered trademark of MariaDB Corporation Ab; REDIS® is a registered trademark of Redis Labs Ltd. F5 Networks, Inc. owns the rights to NGINX® and NGINX Plus®; Varnish® is a registered trademark of Varnish Software AB. Adobe Inc. holds the rights to Magento®; PrestaShop® is a registered trademark of PrestaShop SA; OpenCart® is a registered trademark of OpenCart Limited. Automattic Inc. owns the rights to WordPress®, WooCommerce®, and JetPack®; Open Source Matters, Inc. owns the rights to Joomla®; Dries Buytaert holds the rights to Drupal®. Amazon Web Services, Inc. holds the rights to AWS®; Google LLC holds the rights to Google Cloud™ and Chrome™; Facebook, Inc. owns the rights to Facebook®; Microsoft Corporation holds the rights to Microsoft®, Azure®, and Internet Explorer®; Mozilla Foundation owns the rights to Firefox®. Apache® is a registered trademark of The Apache Software Foundation; PHP® is a registered trademark of the PHP Group. CloudFlare® is a registered trademark of Cloudflare, Inc.; NETSCOUT® is a registered trademark of NETSCOUT Systems Inc.; ElasticSearch®, LogStash®, and Kibana® are registered trademarks of Elastic NV This site is not affiliated, sponsored, or otherwise associated with any of the entities mentioned above and does not represent any of these entities in any way. All rights to the brands and product names mentioned are the property of their respective copyright holders. Any other trademarks mentioned belong to their registrants. MANAGED SERVER® is a registered trademark at European level by MANAGED SERVER SRL Via Enzo Ferrari, 9 62012 Civitanova Marche (MC) Italy.

Back to top