nginx-resources
A collection of resources covering Nginx, Nginx + Lua, OpenResty and Tengine
Top Related Projects
How to improve NGINX performance, security, and other important things.
A curated list of awesome Nginx distributions, 3rd party modules, Active developers, etc. :octocat:
Nginx HTTP server boilerplate configs
⚙️ NGINX config generator on steroids 💉
NGINX tuning for best performance
A collection of useful Nginx configuration snippets
Quick Overview
The fcambus/nginx-resources repository is a curated list of resources for Nginx, a popular open-source web server and reverse proxy. It serves as a comprehensive collection of links to various Nginx-related tools, modules, books, and other resources, making it an invaluable reference for developers and system administrators working with Nginx.
Pros
- Extensive collection of Nginx resources in one place
- Well-organized and categorized for easy navigation
- Regularly updated with new and relevant content
- Community-driven, allowing contributions from Nginx enthusiasts
Cons
- May be overwhelming for beginners due to the large amount of information
- Some links may become outdated over time
- Lacks detailed explanations or tutorials for each resource
- Limited to English-language resources, potentially excluding valuable content in other languages
Note: As this is not a code library, the code examples and getting started instructions sections have been omitted.
Competitor Comparisons
How to improve NGINX performance, security, and other important things.
Pros of nginx-admins-handbook
- More comprehensive and detailed content, covering advanced topics and best practices
- Includes practical examples and configuration snippets
- Regularly updated with new information and community contributions
Cons of nginx-admins-handbook
- May be overwhelming for beginners due to its extensive content
- Focuses primarily on administration and configuration, with less emphasis on external resources
Code Comparison
nginx-admins-handbook:
server {
listen 80;
server_name example.com;
return 301 https://$server_name$request_uri;
}
nginx-resources:
# No specific code examples provided in the repository
Summary
nginx-admins-handbook is a comprehensive guide for NGINX administrators, offering in-depth explanations, best practices, and configuration examples. It's regularly updated and includes advanced topics, making it ideal for experienced users but potentially overwhelming for beginners.
nginx-resources, on the other hand, is a curated list of NGINX resources, including articles, books, and tools. It provides a broader overview of the NGINX ecosystem but lacks the detailed explanations and code examples found in nginx-admins-handbook.
Both repositories serve different purposes: nginx-admins-handbook is a detailed handbook for NGINX configuration and administration, while nginx-resources is a collection of external resources for learning about NGINX.
A curated list of awesome Nginx distributions, 3rd party modules, Active developers, etc. :octocat:
Pros of awesome-nginx
- More comprehensive and detailed categorization of resources
- Includes a wider range of topics, such as development tools and security
- Regularly updated with new contributions from the community
Cons of awesome-nginx
- Less focus on official documentation and core resources
- May be overwhelming for beginners due to the extensive list of resources
- Some links may be outdated or no longer maintained
Code comparison
nginx-resources:
## Books
* [Nginx Essentials](https://www.packtpub.com/product/nginx-essentials/9781785289538)
* [Nginx Cookbook](https://www.oreilly.com/library/view/nginx-cookbook/9781492049098/)
awesome-nginx:
### Books
* [Nginx Essentials](https://www.packtpub.com/product/nginx-essentials/9781785289538)
* [Nginx Cookbook](https://www.oreilly.com/library/view/nginx-cookbook/9781492049098/)
* [Nginx HTTP Server](https://www.packtpub.com/product/nginx-http-server-fourth-edition/9781788623551)
Both repositories provide curated lists of Nginx resources, but awesome-nginx offers a more extensive collection with broader categories. nginx-resources focuses on core documentation and essential resources, making it potentially more suitable for beginners. awesome-nginx provides a wider range of topics and community contributions, which may be more beneficial for advanced users or those looking for specific Nginx-related tools and solutions.
Nginx HTTP server boilerplate configs
Pros of server-configs-nginx
- Provides ready-to-use configuration files for various scenarios
- Includes detailed comments explaining each configuration directive
- Regularly updated with best practices and security improvements
Cons of server-configs-nginx
- Focuses primarily on configuration files, lacking broader NGINX resources
- May require more customization for specific use cases
- Less comprehensive in terms of external NGINX-related tools and articles
Code Comparison
server-configs-nginx:
# Compression
gzip on;
gzip_comp_level 5;
gzip_min_length 256;
gzip_proxied any;
gzip_vary on;
nginx-resources (example from linked resource):
location / {
try_files $uri $uri/ /index.php?$query_string;
}
Summary
server-configs-nginx is a collection of configuration files and best practices for NGINX, offering ready-to-use solutions with detailed explanations. It's regularly updated but focuses primarily on configuration.
nginx-resources is a curated list of NGINX resources, including articles, books, and tools. It provides a broader overview of the NGINX ecosystem but doesn't offer direct configuration files.
Choose server-configs-nginx for practical, ready-to-use configurations, or nginx-resources for a comprehensive list of NGINX-related resources and learning materials.
⚙️ NGINX config generator on steroids 💉
Pros of nginxconfig.io
- Interactive web-based configuration generator for NGINX
- User-friendly interface for creating custom NGINX configurations
- Provides instant preview and downloadable config files
Cons of nginxconfig.io
- Limited to generating configurations, not a comprehensive resource
- May not cover all advanced NGINX features or use cases
- Requires internet access to use the tool
Code Comparison
nginxconfig.io generates custom NGINX configurations based on user input:
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.com;
root /var/www/example.com/public;
# ... more generated config
}
nginx-resources doesn't provide code samples directly but links to various resources, including configuration examples:
# No direct code samples available
# The repository provides links to external resources
Summary
nginxconfig.io is an interactive tool for generating NGINX configurations, offering a user-friendly interface and instant previews. However, it's limited to configuration generation and may not cover all advanced features.
nginx-resources is a curated list of NGINX resources, providing a comprehensive collection of links to articles, tutorials, and tools. While it doesn't offer direct configuration generation, it serves as a valuable reference for NGINX users of all levels.
Both repositories serve different purposes: nginxconfig.io for quick configuration generation, and nginx-resources for in-depth learning and reference material.
NGINX tuning for best performance
Pros of nginx-tuning
- Focuses specifically on performance optimization and tuning
- Provides concrete configuration examples and explanations
- Includes benchmarking tools and methodologies
Cons of nginx-tuning
- More limited in scope compared to the comprehensive resource list
- May require more technical expertise to implement effectively
- Less frequently updated than the resource collection
Code Comparison
nginx-tuning:
worker_processes auto;
worker_rlimit_nofile 100000;
events {
worker_connections 2048;
use epoll;
}
nginx-resources: (No direct code examples provided, as it's primarily a curated list of resources)
Summary
nginx-tuning is a focused repository providing specific configurations and techniques for optimizing Nginx performance. It offers practical examples and benchmarking tools, making it valuable for users looking to fine-tune their Nginx setups.
nginx-resources, on the other hand, is a comprehensive collection of various Nginx-related resources, including articles, books, modules, and tools. It serves as a broader reference point for Nginx users and administrators.
While nginx-tuning excels in its targeted approach to performance optimization, nginx-resources offers a wider range of information and resources for general Nginx usage and learning. The choice between the two depends on the user's specific needs and level of expertise.
A collection of useful Nginx configuration snippets
Pros of nginx-conf
- Focuses on practical configuration examples, making it easier for users to implement specific setups
- Includes detailed explanations and comments within the configuration files, enhancing understanding
- Organized by use cases, allowing users to quickly find relevant examples for their needs
Cons of nginx-conf
- Limited in scope compared to nginx-resources, which covers a broader range of NGINX-related topics
- May not be as frequently updated or maintained as nginx-resources
- Lacks additional resources like articles, books, or tools that are included in nginx-resources
Code Comparison
nginx-conf example:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://backend;
proxy_set_header Host $host;
}
}
nginx-resources doesn't contain actual configuration files, but rather links to resources. An example entry:
- [Nginx Gzip Module](http://nginx.org/en/docs/http/ngx_http_gzip_module.html) - Compress responses using gzip, reducing bandwidth usage.
Both repositories serve different purposes: nginx-conf provides practical configuration examples, while nginx-resources offers a comprehensive collection of NGINX-related resources. Users may find value in both, depending on their specific needs and level of expertise with NGINX.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Nginx Resources 
A collection of resources covering Nginx, Nginx + Lua, OpenResty and Tengine.
This list is maintained by Frederic Cambus. For updates, follow me on Twitter: @fcambus
Understanding Nginx
- History of Nginx
- Understanding Nginx versioning
- Interview with the creator of Nginx
- Interview with Igor Sysoev, author of Apache's competitor NGINX
- The case for Nginx in front of application servers
- Nginx Optimization: understanding sendfile, tcp_nodelay and tcp_nopush
Architecture
- The Architecture of Open Source Applications (Volume 2): nginx
- Nginx Guts - Shedding light on Nginx internals
- Nginx discovery journey
- Nginx Internals
- Inside NGINX: How We Designed for Performance & Scale
- Thread Pools in NGINX
Configuration
- Beginner's Guide
- Alphabetical index of variables
- Nginx Pitfalls
- Useful Rewrites for Nginx
- Nginx Configuration Primer
- Nginx Primer 2: From Apache to Nginx
- Understanding the Nginx Configuration Inheritance Model
- Nginx HTTP server boilerplate configs
- Nginx Boilerplate - Configuration template and a set of handy must-have snippets
- How to Configure OCSP Stapling in Apache and Nginx
- NGINX Config - Online nginx configuration generator
- Nice nginx features for developers
- Nice nginx features for operators
- Avoiding the Top 10 NGINX Configuration Mistakes
- Gixy - Nginx configuration static analyzer
- Nginx common configuration - Universal config and snippets
Tutorials
- NGINX and NGINX Plus Admin Guide
- agentzh's Nginx Tutorials (Source)
- Introduction to nginx.conf scripting
- Load Balancing with NGINX and NGINX Plus (Part 2)
- Optimizing Nginx for High Traffic Loads
- NGINX as a WebSockets Proxy
- HTTP Keepalive Connections and Web Performance
- CORS on Nginx
- Serving precompressed content with Nginx and Zopfli
- Nginx on FreeBSD
- Using New Debugging Features to Probe NGINX Internals
- Performing A/B Testing with NGINX and NGINX Plus
- Improving NGINX Performance with Kernel TLS and SSL_sendfile()
Modules development
- Official Development Guide
- Guide to Nginx Module Development
- Advanced Topics In Nginx Module Development
APIs
- Telize - JSON IP and GeoIP REST API (IP Geolocation) built on Nginx and Lua
- GIN - JSON-API framework
- Outbound API rate limits: the nginx way
- Using Nginx to comply with a third-party API's rate limits
- Kong - Management Layer for Microservices and APIs
Hacks
- Nginx JSON hacks
- Using Environment Variables In Nginx.conf
- Log rotation directly within Nginx configuration file
- Realtime pixel tracking with Nginx, syslog-ng, and Redis
- Dynamic log formats in Nginx
- Capture and delay unwanted requests
- Nginx: a caching, thumbnailing, reverse proxying image server?
Tips
- Things you didn't know Nginx could do
- Finding the nginx gzip_comp_level sweet spot
- nginx mirroring tips and tricks
Nginx + Lua
- Nginx, Lua, and beyond
- Pushing Nginx to its limit with Lua
- Adding OAuth Support to Nginx via Lua
- Scripting libdrizzle with Lua inside Nginx
- Nginx and Lua
- Writing an Nginx authentication module in Lua
- Scaling TextRazor in the Cloud with Nginx and Lua
- LSSO - Lua + Nginx SSO System with an OAuth Backend
- Measuring Nginx Cache Performance using Lua and Redis
- nginx-lua - Nginx 1.19+ with LUA support based on Alpine Linux, Amazon Linux, CentOS, Debian, Fedora and Ubuntu.
Nginx + njs
- njs scripting language reference and examples
- Collection of njs use cases
- JavaScript embedded on NGINX - Getting started with njs
- Create Nginx extensions in JavaScript
- Make your nginx config even more modular and reusable with njs 0.7.7
- Diagnostic logging with the NGINX JavaScript module
- How to log request headers with NGINX and njs
- Using NGINX as an Object Storage Gateway via njs
- Easy HTTPS with NGINX and ACME via njs
OpenResty
- OpenResty - Fast web app server by extending Nginx
- Lapis - A web framework for Lua or MoonScript powered by OpenResty
- Nginx image processing server with OpenResty and Lua
- Building an OpenResty events server
- SysAdvent 2014 - OpenResty, Nginx and Lua (Source)
- Ceryx - A dynamic reverse proxy
- An Introduction To OpenResty
- Programming OpenResty (written by the OpenResty creator)
- VeryNginx - Nginx distribution which provides WAF, Control Panel, and Dashboards
Tengine
Talks
- NGINX Conference 2019 Videos
- NGINX Conference 2018 Videos
- NGINX Conference 2017 Videos
- NGINX Conference 2016 Videos
- NGINX Conference 2015 Videos
- NGINX Conference 2014 Videos
- NGINX Conference
- NGINX User Summit 2014 - Lightning talks
License
To the extent possible under law, Frederic Cambus has waived all copyright and related or neighboring rights to this work.
Top Related Projects
How to improve NGINX performance, security, and other important things.
A curated list of awesome Nginx distributions, 3rd party modules, Active developers, etc. :octocat:
Nginx HTTP server boilerplate configs
⚙️ NGINX config generator on steroids 💉
NGINX tuning for best performance
A collection of useful Nginx configuration snippets
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot