Nginx alternatives
Author: g | 2025-04-24
Nginx Alternatives Similar projects and alternatives to Nginx Nginx. Suggest alternative; Edit details; CPython. 1 1,448 65,046 10.0 Python Nginx VS CPython The Python programming What is the best nginx alternative that is as good as nginx? Look through these 10 nginx alternatives to choose the best one for you.
Nginx alternative for key/value store with Nginx Plus
Have the resources to do so should they want to+; which means, they don't want to, which is a signal in the other direction: they stopped caring about macOS+ HL1 has a FOSS engine that apparently supports it, and more: source-engine 11 16 1,721 6.8 C++Modified source engine (2017) developed by valve and leaked in 2020. Not for commercial purporses gotestwaf 13 5 1,623 5.7 GoAn open-source project in Golang to asess different API Security tools and WAF for detection logic and bypasses roxy-wi 14 8 1,595 9.1 PythonWeb interface for managing Haproxy, Nginx, Apache and Keepalived servers waf-bypass 15 5 1,340 8.0 PythonCheck your WAF before an attacker does lua-resty-waf 16 1 1,282 0.0 PerlHigh-performance WAF built on the OpenResty stack openappsec 17 23 1,106 9.4 C++open-appsec is an open-source machine learning security engine that preemptively and automatically prevents threats against Web Application & APIs. It is available for NGINX, NGINX Ingress, Envoy (Soon), Kong (Soon), Ambassador (Soon). uuWAF 18 1 928 9.3 LuaAn industry-leading free, high-performance, AI and semantic technology Web Application Firewall and API Security Gateway (WAAP) - UUSEC WAF.Project mention:Recommended free and open-source WAF for 2024.|dev.to|2024-07-19Official GitHub: blazehttp 19 3 762 7.2 GoBlazeHTTP 是一款简单易用的 WAF 防护效果测试工具。BlazeHTTP stands as a user-friendly WAF protection efficacy evaluation tool.Project mention:Why SafeLine Could Be the Best Free WAF for Your Website|dev.to|2024-08-22BlazeHTTP Overview WPF Application Framework (WAF) 20 4 722 9.1 C#Win Application Framework (WAF) is a lightweight Framework that helps you to create well structured XAML Applications. nginx-autoinstall 21 1 641 0.0 ShellCompile NGINX from source with custom modules and patches on Debian and Ubuntu (by angristan) api-firewall 22 15 601 7.4 GoFast and light-weight API proxy firewall for request and response validation by OpenAPI specs. awesome-cloud-security 23 1 587 4.9A curated list of awesome cloud security blogs, podcasts, standards, projects, and examples. (by Funkmyster) SaaSHubwww.saashub.comfeaturedSaaSHub - Software Alternatives and Reviews.SaaSHub helps you find the best software and product alternativesNOTE:The open source projects on this list are ordered by number of github stars.The number of mentions indicates repo mentiontions in the last 12 Months orsince we started tracking (Dec 2020).Waf discussionWaf related posts6 Essential WebRTC Security Best Practices for 20251 project|dev.to|28 Dec 2024Switch 2 will be backwards compatible with Switch, Nintendo confirms6 Powerful Free Security Tools That Will Surprise You4 projects|dev.to|9 Oct 20245 Best Free and Open Source WAF for 20255 projects|dev.to|18 Sep 2024Battle of the WAFs: Testing Detection and Performance Across Open-Source Firewalls3 projects|dev.to|27 Aug 2024Comparison on Six Self-Hosted WAF3 projects|dev.to|26 Aug 2024Why SafeLine Could Be the Best Free WAF for Your Website4 projects|dev.to|22 Aug 2024A note from our sponsor - CodeRabbitcoderabbit.ai|12 Mar 2025Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis.
NGINX Alternative: Discover the Best
Signing keys:RUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/nullRUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/app-protect-security-updates.gpg >/dev/null# Add NGINX Plus repository:RUN printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/nginx-plus.list# Add NGINX App Protect WAF repositories:RUN printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/nginx-app-protect.listRUN printf "deb [signed-by=/usr/share/keyrings/app-protect-security-updates.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/app-protect-security-updates.list# Download the apt configuration to `/etc/apt/apt.conf.d`:RUN wget -P /etc/apt/apt.conf.d Update the repository and install the most recent version of the NGINX App Protect WAF package (which includes NGINX Plus):RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ apt-get update && apt-get install -y app-protect# Forward request logs to Docker log collector:RUN ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stderr /var/log/nginx/error.log# Copy configuration files:COPY nginx.conf custom_log_format.json /etc/nginx/COPY entrypoint.sh /root/CMD ["sh", "/root/entrypoint.sh"]Ubuntu 18.04 (Bionic) / 20.04 (Focal) / 22.04 (Jammy) / 24.04 (Noble) Docker Deployment Example ARG OS_CODENAME# Where OS_CODENAME can be: bionic/focal/jammy/noble# syntax=docker/dockerfile:1# For Ubuntu 18.04 / 20.04 /22.04 / 24.04:FROM ubuntu:${OS_CODENAME}# Install prerequisite packages:RUN apt-get update && apt-get install -y apt-transport-https lsb-release ca-certificates wget gnupg2# Download and add the NGINX signing keys:RUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/nullRUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/app-protect-security-updates.gpg >/dev/null# Add NGINX Plus repository:RUN printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/nginx-plus.list# Add NGINX App Protect WAF repositories:RUN printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/nginx-app-protect.listRUN printf "deb [signed-by=/usr/share/keyrings/app-protect-security-updates.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/app-protect-security-updates.list# Download the apt configuration to `/etc/apt/apt.conf.d`:RUN wget -P /etc/apt/apt.conf.d Update the repository and install the most recent version of the NGINX App Protect WAF package (which includes NGINX Plus):RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ apt-get update && DEBIAN_FRONTEND="noninteractive" apt-get install -y app-protect# Forward request logs to Docker log collector:RUN lnNginx Alternatives and Reviews - LibHunt
&& apt-get install -y apt-transport-https lsb-release ca-certificates wget gnupg2# Download and add the NGINX signing keys:RUN wget && apt-key add nginx_signing.key \ && wget && apt-key add app-protect-security-updates.key# Add NGINX App Protect WAF repositories:RUN printf "deb `lsb_release -cs` nginx-plus\n" | tee /etc/apt/sources.list.d/nginx-app-protect.list \ && printf "deb `lsb_release -cs` nginx-plus\n" | tee /etc/apt/sources.list.d/app-protect-security-updates.list# Download the apt configuration to `/etc/apt/apt.conf.d`:RUN wget -P /etc/apt/apt.conf.d Update the repository and install the most recent version of the NGINX App Protect WAF Compiler package:RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ apt-get update && apt-get install -y app-protect-compilerCMD ["sh"]Debian 11 / Debian 12 Converter Docker Deployment Example # syntax=docker/dockerfile:1# For Debian 11:FROM debian:bullseye/bookworm# Install prerequisite packages:RUN apt-get update && apt-get install -y apt-transport-https lsb-release ca-certificates wget gnupg2# Download and add the NGINX signing keys:RUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/nullRUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/app-protect-security-updates.gpg >/dev/null# Add NGINX App Protect WAF repositories:RUN printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/nginx-app-protect.list RUN printf "deb [signed-by=/usr/share/keyrings/app-protect-security-updates.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/app-protect-security-updates.list# Download the apt configuration to `/etc/apt/apt.conf.d`:RUN wget -P /etc/apt/apt.conf.d Update the repository and install the most recent version of the NGINX App Protect WAF Compiler package:RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ apt-get update && DEBIAN_FRONTEND="noninteractive" apt-get install -y app-protect-compilerUbuntu 18.04 / Ubuntu 20.04 / Ubuntu 22.04 / Ubuntu 24.04 Converter Docker Deployment Example ARG OS_CODENAME# Where OS_CODENAME can be: bionic/focal/jammy/noble# syntax=docker/dockerfile:1# For Ubuntu 18.04 / 20.04 /22.04 / 24.04:FROM ubuntu:${OS_CODENAME}# Install prerequisite packages:RUN apt-get update && apt-get install -y apt-transport-https lsb-release ca-certificates wget gnupg2# Download and add the NGINX signing keys:RUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/nullRUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/app-protect-security-updates.gpg >/dev/null# Add NGINX App Protect WAF repositories:RUN printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \ `lsb_release -cs`. Nginx Alternatives Similar projects and alternatives to Nginx Nginx. Suggest alternative; Edit details; CPython. 1 1,448 65,046 10.0 Python Nginx VS CPython The Python programming What is the best nginx alternative that is as good as nginx? Look through these 10 nginx alternatives to choose the best one for you.Nginx Proxy Manager Alternatives and
Add at the end the option to build a dynamically linked module with the directory where it is situated (–add-dynamic-module=../nginx-module-vts-0.1.18/). Your “configure arguments” might be different do not copy the ones below just use the ones from your “nginx -V”.[myuser@srv nginx-1.17.2]# ./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie' --add-dynamic-module=../nginx-module-vts-0.1.18/checking for OS + Linux 3.10.0-957.1.3.el7.x86_64 x86_64checking for C compiler ... found + using GNU C compiler + gcc version: 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) checking for gcc -pipe switch ... foundchecking for --with-ld-opt="-Wl,-z,relro -Wl,-z,now -pie" ... foundchecking for -Wl,-E switch ... foundchecking for gcc builtin atomic operations ... found..........checking for OpenSSL library ... foundchecking for zlib library ... foundcreating objs/MakefileConfiguration summary + using threads + using system PCRE library + using system OpenSSL library + using system zlib library nginx path prefix: "/etc/nginx" nginx binary file: "/usr/sbin/nginx" nginx modules path: "/usr/lib64/nginx/modules" nginx configuration prefix: "/etc/nginx" nginx configuration file: "/etc/nginx/nginx.conf" nginx pid file: "/var/run/nginx.pid" nginx error log file: "/var/log/nginx/error.log" nginx http access log file: "/var/log/nginx/access.log" nginx http client request body temporary files: "/var/cache/nginx/client_temp" nginx http proxy temporary files: "/var/cache/nginx/proxy_temp" nginx http fastcgi temporary files: "/var/cache/nginx/fastcgi_temp" nginx http uwsgi temporary files: "/var/cache/nginx/uwsgi_temp" nginx http scgi temporary files: "/var/cache/nginx/scgi_temp"[myuser@srv nginx-1.17.2]# make -j 4make -f objs/Makefilemake[1]: Entering directory `/root/ttt/nginx-1.17.2'cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs \ -o objs/src/core/nginx.o \ src/core/nginx.c..........objs/src/stream/ngx_stream_ssl_preread_module.o \objs/ngx_modules.o \-Wl,-z,relro -Wl,-z,now -pie -ldl -lpthread -lpthread -lcrypt -lpcre -lssl -lcrypto -ldl -lpthread -lz \-Wl,-Ecc -o objs/ngx_http_vhost_traffic_status_module.so \objs/addon/src/ngx_http_vhost_traffic_status_module.o \objs/addon/src/ngx_http_vhost_traffic_status_variables.o \objs/addon/src/ngx_http_vhost_traffic_status_string.o \objs/addon/src/ngx_http_vhost_traffic_status_shm.o \objs/addon/src/ngx_http_vhost_traffic_status_node.o \objs/addon/src/ngx_http_vhost_traffic_status_filter.o \objs/addon/src/ngx_http_vhost_traffic_status_control.o \objs/addon/src/ngx_http_vhost_traffic_status_limit.o \objs/addon/src/ngx_http_vhost_traffic_status_display.o \objs/addon/src/ngx_http_vhost_traffic_status_display_json.o \objs/addon/src/ngx_http_vhost_traffic_status_display_prometheus.o \objs/addon/src/ngx_http_vhost_traffic_status_set.o \objs/addon/src/ngx_http_vhost_traffic_status_dump.o \objs/ngx_http_vhost_traffic_status_module_modules.o \-Wl,-z,relro -Wl,-z,now -pie \-sharedmake[1]: Leaving directory `/home/myuser/nginx-1.17.2'The module (and the Nginx binary, which we are not going to use it, but it is there) is built successfully. Just copy only the module (do not execute “make install”, because it will overwrite your original Nginx binary and multiple additional files) in “/etc/nginx/modules/”:[myuser@srv nginx-1.17.2]# sudo cp objs/ngx_http_vhost_traffic_status_module.so /etc/nginx/modules/And you are ready to use it. STEP 3) Use the moduleTo have the same output as the image we showed at the begining ofBest nginx Alternatives - alternativein.com
Use either of the dependencies or epel repo # && rpm -ivh \ && dnf clean all# Install NGINX App Protect WAF:RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ dnf -y install app-protect \ && dnf clean all \ && rm -rf /var/cache/dnf# Forward request logs to Docker log collector:RUN ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stderr /var/log/nginx/error.log# Copy configuration files:COPY nginx.conf custom_log_format.json /etc/nginx/COPY entrypoint.sh /root/CMD ["sh", "/root/entrypoint.sh"]Amazon Linux 2 Docker Deployment Example # syntax=docker/dockerfile:1# For Amazon Linux 2:FROM amazonlinux:2# Install prerequisite packages:RUN amazon-linux-extras enable epelRUN yum clean metadataRUN yum -y install wget ca-certificates epel-release shadow-utils# Add NGINX Plus repo to Yum:RUN wget -P /etc/yum.repos.d Add NGINX App-protect repo to Yum:RUN wget -P /etc/yum.repos.d Install NGINX App Protect WAF:RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ yum -y install app-protect \ && yum clean all \ && rm -rf /var/cache/yum# Forward request logs to Docker log collector:RUN ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stderr /var/log/nginx/error.log# Copy configuration files:COPY nginx.conf custom_log_format.json /etc/nginx/COPY entrypoint.sh /root/CMD ["sh", "/root/entrypoint.sh"]Amazon Linux 2023 Docker Deployment Example # syntax=docker/dockerfile:1# For Amazon Linux 2023:FROM amazonlinux:2023# Install prerequisite packages:RUN dnf -y install wget ca-certificates# Add NGINX Plus repo:RUN wget -P /etc/yum.repos.d Add NAP dependencies repo:RUN wget -P /etc/yum.repos.d Add NGINX App-protect repo:RUN wget -P /etc/yum.repos.d Install NGINX App Protect WAF:RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ dnf -y install app-protect \ && dnf clean all \ && rm -rf /var/cache/yum# Forward request logs to Docker log collector:RUN ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stderr /var/log/nginx/error.log# Copy configuration files:COPY nginx.conf custom_log_format.json /etc/nginx/COPY entrypoint.sh /root/CMD ["sh", "/root/entrypoint.sh"]Debian 10 (Buster) / 11 (Bullseye) / 12 (Bookworm) Docker Deployment Example ARG OS_CODENAME# Where OS_CODENAME can be: buster/bullseye/bookworm# syntax=docker/dockerfile:1# For Debian 10 / 11 / 12:FROM debian:${OS_CODENAME}# Install prerequisite packages:RUN apt-get update && apt-get install -y apt-transport-https lsb-release ca-certificates wget gnupg2# Download and add the NGINXNginx Competitors and Alternatives - Owler
To Yum:RUN wget -P /etc/yum.repos.d wget -P /etc/yum.repos.d \ # You can use either of the dependencies or epel repo # && rpm -ivh \ && dnf clean all# Install NGINX App Protect WAF:RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ dnf install --enablerepo=codeready-builder-for-rhel-8-x86_64-rpms -y app-protect-compiler \ && dnf clean all \ && rm -rf /var/cache/dnfRHEL UBI9 Converter Docker Deployment Example # syntax=docker/dockerfile:1# For RHEL ubi9:FROM registry.access.redhat.com/ubi9/ubi# Install prerequisite packages:RUN dnf -y install wget ca-certificates# Add NGINX App-protect & dependencies repo to Yum:RUN wget -P /etc/yum.repos.d wget -P /etc/yum.repos.d \ # You can use either of the dependencies or epel repo # && rpm -ivh \ && dnf clean all# Install NGINX App Protect WAF:RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ dnf install --enablerepo=codeready-builder-for-rhel-9-x86_64-rpms -y app-protect-compiler \ && dnf clean all \ && rm -rf /var/cache/dnfOracle Linux 8 Converter Docker Deployment Example # syntax=docker/dockerfile:1# For Oracle Linux 8:FROM oraclelinux:8# Install prerequisite packages:RUN dnf -y install wget ca-certificates yum-utils# Add NGINX App-protect repo to Yum:RUN wget -P /etc/yum.repos.d Enable Yum repositories to pull App Protect dependencies:RUN dnf config-manager --set-enabled ol8_codeready_builder \ && wget -P /etc/yum.repos.d \ # You can use either of the dependencies or epel repo # && rpm -ivh \ && dnf clean all# Install NGINX App Protect WAF:RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ dnf install -y app-protect-compiler \ && dnf clean all \ && rm -rf /var/cache/dnfAmazon Linux 2 Converter Docker Deployment Example # syntax=docker/dockerfile:1# For Amazon Linux 2:FROM amazonlinux:2# Install prerequisite packages:RUN amazon-linux-extras enable epelRUN yum clean metadataRUN yum -y install wget ca-certificates epel-release shadow-utils# Add NGINX App-protect repo to Yum:RUN wget -P /etc/yum.repos.d Install NGINX App Protect WAF:RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ yum -y install app-protect-compiler \ && yum clean all \ && rm -rf /var/cache/yumDebian 10 Converter Docker Deployment Example # syntax=docker/dockerfile:1# For Debian 10:FROM debian:buster# Install prerequisite packages:RUN apt-get update. Nginx Alternatives Similar projects and alternatives to Nginx Nginx. Suggest alternative; Edit details; CPython. 1 1,448 65,046 10.0 Python Nginx VS CPython The Python programming What is the best nginx alternative that is as good as nginx? Look through these 10 nginx alternatives to choose the best one for you.Comments
Have the resources to do so should they want to+; which means, they don't want to, which is a signal in the other direction: they stopped caring about macOS+ HL1 has a FOSS engine that apparently supports it, and more: source-engine 11 16 1,721 6.8 C++Modified source engine (2017) developed by valve and leaked in 2020. Not for commercial purporses gotestwaf 13 5 1,623 5.7 GoAn open-source project in Golang to asess different API Security tools and WAF for detection logic and bypasses roxy-wi 14 8 1,595 9.1 PythonWeb interface for managing Haproxy, Nginx, Apache and Keepalived servers waf-bypass 15 5 1,340 8.0 PythonCheck your WAF before an attacker does lua-resty-waf 16 1 1,282 0.0 PerlHigh-performance WAF built on the OpenResty stack openappsec 17 23 1,106 9.4 C++open-appsec is an open-source machine learning security engine that preemptively and automatically prevents threats against Web Application & APIs. It is available for NGINX, NGINX Ingress, Envoy (Soon), Kong (Soon), Ambassador (Soon). uuWAF 18 1 928 9.3 LuaAn industry-leading free, high-performance, AI and semantic technology Web Application Firewall and API Security Gateway (WAAP) - UUSEC WAF.Project mention:Recommended free and open-source WAF for 2024.|dev.to|2024-07-19Official GitHub: blazehttp 19 3 762 7.2 GoBlazeHTTP 是一款简单易用的 WAF 防护效果测试工具。BlazeHTTP stands as a user-friendly WAF protection efficacy evaluation tool.Project mention:Why SafeLine Could Be the Best Free WAF for Your Website|dev.to|2024-08-22BlazeHTTP Overview WPF Application Framework (WAF) 20 4 722 9.1 C#Win Application Framework (WAF) is a lightweight Framework that helps you to create well structured XAML Applications. nginx-autoinstall 21 1 641 0.0 ShellCompile NGINX from source with custom modules and patches on Debian and Ubuntu (by angristan) api-firewall 22 15 601 7.4 GoFast and light-weight API proxy firewall for request and response validation by OpenAPI specs. awesome-cloud-security 23 1 587 4.9A curated list of awesome cloud security blogs, podcasts, standards, projects, and examples. (by Funkmyster) SaaSHubwww.saashub.comfeaturedSaaSHub - Software Alternatives and Reviews.SaaSHub helps you find the best software and product alternativesNOTE:The open source projects on this list are ordered by number of github stars.The number of mentions indicates repo mentiontions in the last 12 Months orsince we started tracking (Dec 2020).Waf discussionWaf related posts6 Essential WebRTC Security Best Practices for 20251 project|dev.to|28 Dec 2024Switch 2 will be backwards compatible with Switch, Nintendo confirms6 Powerful Free Security Tools That Will Surprise You4 projects|dev.to|9 Oct 20245 Best Free and Open Source WAF for 20255 projects|dev.to|18 Sep 2024Battle of the WAFs: Testing Detection and Performance Across Open-Source Firewalls3 projects|dev.to|27 Aug 2024Comparison on Six Self-Hosted WAF3 projects|dev.to|26 Aug 2024Why SafeLine Could Be the Best Free WAF for Your Website4 projects|dev.to|22 Aug 2024A note from our sponsor - CodeRabbitcoderabbit.ai|12 Mar 2025Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis.
2025-03-27Signing keys:RUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/nullRUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/app-protect-security-updates.gpg >/dev/null# Add NGINX Plus repository:RUN printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/nginx-plus.list# Add NGINX App Protect WAF repositories:RUN printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/nginx-app-protect.listRUN printf "deb [signed-by=/usr/share/keyrings/app-protect-security-updates.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/app-protect-security-updates.list# Download the apt configuration to `/etc/apt/apt.conf.d`:RUN wget -P /etc/apt/apt.conf.d Update the repository and install the most recent version of the NGINX App Protect WAF package (which includes NGINX Plus):RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ apt-get update && apt-get install -y app-protect# Forward request logs to Docker log collector:RUN ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stderr /var/log/nginx/error.log# Copy configuration files:COPY nginx.conf custom_log_format.json /etc/nginx/COPY entrypoint.sh /root/CMD ["sh", "/root/entrypoint.sh"]Ubuntu 18.04 (Bionic) / 20.04 (Focal) / 22.04 (Jammy) / 24.04 (Noble) Docker Deployment Example ARG OS_CODENAME# Where OS_CODENAME can be: bionic/focal/jammy/noble# syntax=docker/dockerfile:1# For Ubuntu 18.04 / 20.04 /22.04 / 24.04:FROM ubuntu:${OS_CODENAME}# Install prerequisite packages:RUN apt-get update && apt-get install -y apt-transport-https lsb-release ca-certificates wget gnupg2# Download and add the NGINX signing keys:RUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/nullRUN wget -qO - | \ gpg --dearmor | tee /usr/share/keyrings/app-protect-security-updates.gpg >/dev/null# Add NGINX Plus repository:RUN printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/nginx-plus.list# Add NGINX App Protect WAF repositories:RUN printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/nginx-app-protect.listRUN printf "deb [signed-by=/usr/share/keyrings/app-protect-security-updates.gpg] \ `lsb_release -cs` nginx-plus\n" | \ tee /etc/apt/sources.list.d/app-protect-security-updates.list# Download the apt configuration to `/etc/apt/apt.conf.d`:RUN wget -P /etc/apt/apt.conf.d Update the repository and install the most recent version of the NGINX App Protect WAF package (which includes NGINX Plus):RUN --mount=type=secret,id=nginx-crt,dst=/etc/ssl/nginx/nginx-repo.crt,mode=0644 \ --mount=type=secret,id=nginx-key,dst=/etc/ssl/nginx/nginx-repo.key,mode=0644 \ apt-get update && DEBIAN_FRONTEND="noninteractive" apt-get install -y app-protect# Forward request logs to Docker log collector:RUN ln
2025-04-07Add at the end the option to build a dynamically linked module with the directory where it is situated (–add-dynamic-module=../nginx-module-vts-0.1.18/). Your “configure arguments” might be different do not copy the ones below just use the ones from your “nginx -V”.[myuser@srv nginx-1.17.2]# ./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie' --add-dynamic-module=../nginx-module-vts-0.1.18/checking for OS + Linux 3.10.0-957.1.3.el7.x86_64 x86_64checking for C compiler ... found + using GNU C compiler + gcc version: 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) checking for gcc -pipe switch ... foundchecking for --with-ld-opt="-Wl,-z,relro -Wl,-z,now -pie" ... foundchecking for -Wl,-E switch ... foundchecking for gcc builtin atomic operations ... found..........checking for OpenSSL library ... foundchecking for zlib library ... foundcreating objs/MakefileConfiguration summary + using threads + using system PCRE library + using system OpenSSL library + using system zlib library nginx path prefix: "/etc/nginx" nginx binary file: "/usr/sbin/nginx" nginx modules path: "/usr/lib64/nginx/modules" nginx configuration prefix: "/etc/nginx" nginx configuration file: "/etc/nginx/nginx.conf" nginx pid file: "/var/run/nginx.pid" nginx error log file: "/var/log/nginx/error.log" nginx http access log file: "/var/log/nginx/access.log" nginx http client request body temporary files: "/var/cache/nginx/client_temp" nginx http proxy temporary files: "/var/cache/nginx/proxy_temp" nginx http fastcgi temporary files: "/var/cache/nginx/fastcgi_temp" nginx http uwsgi temporary files: "/var/cache/nginx/uwsgi_temp" nginx http scgi temporary files: "/var/cache/nginx/scgi_temp"[myuser@srv nginx-1.17.2]# make -j 4make -f objs/Makefilemake[1]: Entering directory `/root/ttt/nginx-1.17.2'cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs \ -o objs/src/core/nginx.o \ src/core/nginx.c..........objs/src/stream/ngx_stream_ssl_preread_module.o \objs/ngx_modules.o \-Wl,-z,relro -Wl,-z,now -pie -ldl -lpthread -lpthread -lcrypt -lpcre -lssl -lcrypto -ldl -lpthread -lz \-Wl,-Ecc -o objs/ngx_http_vhost_traffic_status_module.so \objs/addon/src/ngx_http_vhost_traffic_status_module.o \objs/addon/src/ngx_http_vhost_traffic_status_variables.o \objs/addon/src/ngx_http_vhost_traffic_status_string.o \objs/addon/src/ngx_http_vhost_traffic_status_shm.o \objs/addon/src/ngx_http_vhost_traffic_status_node.o \objs/addon/src/ngx_http_vhost_traffic_status_filter.o \objs/addon/src/ngx_http_vhost_traffic_status_control.o \objs/addon/src/ngx_http_vhost_traffic_status_limit.o \objs/addon/src/ngx_http_vhost_traffic_status_display.o \objs/addon/src/ngx_http_vhost_traffic_status_display_json.o \objs/addon/src/ngx_http_vhost_traffic_status_display_prometheus.o \objs/addon/src/ngx_http_vhost_traffic_status_set.o \objs/addon/src/ngx_http_vhost_traffic_status_dump.o \objs/ngx_http_vhost_traffic_status_module_modules.o \-Wl,-z,relro -Wl,-z,now -pie \-sharedmake[1]: Leaving directory `/home/myuser/nginx-1.17.2'The module (and the Nginx binary, which we are not going to use it, but it is there) is built successfully. Just copy only the module (do not execute “make install”, because it will overwrite your original Nginx binary and multiple additional files) in “/etc/nginx/modules/”:[myuser@srv nginx-1.17.2]# sudo cp objs/ngx_http_vhost_traffic_status_module.so /etc/nginx/modules/And you are ready to use it. STEP 3) Use the moduleTo have the same output as the image we showed at the begining of
2025-04-10