Nginx 1 Web Server Implementation Cookbook
This course has been retired. Check out the alternatives below
-
What do you get with a Packt Subscription?
- Instant access to this title and 7,500+ eBooks & Videos
- Constantly updated with 100+ new titles each month
- Breadth and depth in over 1,000+ technologies
-
The Core HTTP Module
- The Core HTTP Module
- Introduction
- Installing new modules and compiling Nginx
- Running Nginx in debug mode
- Easy reloading of Nginx using the CLI
- Splitting configuration files for better management
- Setting up multiple virtual hosts
- Setting up a default catch-all virtual host
- Using wildcards in virtual hosts
- Setting up the number of worker processes correctly
- Increasing the size of uploaded files
- Using dynamic SSI for simple sites
- Adding content before and after a particular page
- Enabling auto indexing of a directory
- Serving any random web page from a directory
- Serving cookies for identifying and logging users
- Re-encoding the response to another encoding
- Enabling Gzip compression on some content types
- Setting up 404 and other error pages
-
All About Rewrites: The Rewrite Module
- All About Rewrites: The Rewrite Module
- Introduction
- Setting up a simple redirect
- Using variables in your rewrite
- Using cookies for your rewrites
- Using browser agents for your rewrites
- Using rate limits as a condition for rewrites
- Blocking requests based on HTTP referrers
- Serving maintenance page when deploying
- Setting up a WordPress site with static file serving
- Setting up a Drupal site with static file serving
- Setting up a Magento site with static file serving
- Converting your Apache's .htaccess into Nginx rewrites
- Using maps to make configurations cleaner
-
Get It All Logged: The Logging Module
- Get It All Logged: The Logging Module
- Introduction
- Setting up error log path and levels
- Logging it like Apache
- Disabling logging of 404 in error logs
- Using different logging profiles in the same setup
- Enabling a log file cache
- Utilizing separate error logs per virtual host
- Setting up log rotation
- Enabling remote logging with syslog-ng
- Setting up your custom logs for easy parsing
-
Slow Them Down: Access and Rate Limiting Module
- Slow Them Down: Access and Rate Limiting Module
- Introduction
- Limiting requests for any given session
- Blocking and allowing access using IP
- Setting up simple rate limiting for a download directory
- Rate limiting search engine bots
- Setting up GeoIP using the MaxMind country database
- Using the GeoIP module to set up access and rate control
-
Let's be Secure: Security Modules
- Let's be Secure: Security Modules
- Introduction
- Setting up HTTP auth for access control
- Generating a secure link for files
- Setting up HTTPS for a simple site
- Using non standard error codes for debugging SSL setup
- Using wildcard certificates with multiple servers
- Using Nginx SSL variables for rewrite rules
-
Setting Up Applications: FCGI and WSGI Modules
- Setting Up Applications: FCGI and WSGI Modules
- Introduction
- Setting up a PHP FCGI site
- Setting up a Python site using uWSGI
- Modifying FCGI timeouts
- Utilizing FCGI cache to speed it up
- Using multiple FCGI backends
-
Nginx as a Reverse Proxy
- Nginx as a Reverse Proxy
- Introduction
- Using Nginx as a simple reverse proxy
- Setting up a rails site using Nginx as a reverse proxy
- Setting up correct reverse proxy timeouts
- Setting up caching on the reverse proxy
- Using multiple backends for the reverse proxy
- Serving CGI files using thttpd and Nginx
- Setting up load balancing with reverse proxy
- Splitting requests based on various conditions using split-clients
-
Improving Performance and SEO Using Nginx
- Improving Performance and SEO Using Nginx
- Introduction
- Setting up TCP options correctly for optimizing performance
- Reducing the keep-alives to free up Nginx workers
- Using Memcached as the cache backend
- Configuring the right event model and file limits
- Setting max-age expiry headers for client-side caching
- Blocking scrapers, bots, and spiders to save bandwidth
- Redirection of www to non-www domain for SEO
- Removing all white space from response
- Setting up server status for monitoring
- Setting up Munin for 24x7 Nginx monitoring
- Enabling GZIP pre-compression
- Preventing hotlinking using Nginx
- Using embedded Perl to minify JavaScript files
- Using embedded Perl to minify CSS files
- Using embedded Perl to serve sitemaps (SEO)
- Setting up Boost module on Drupal with Nginx
- Setting up streaming for Flash files
- Utilizing the 1x1 GIF serving module to do offline processing
-
Using Other Third-party Modules
- Using Other Third-party Modules
- Introduction
- Setting up an IMAP/POP3 proxy server
- Setting up authentication for mail services
- Setting up SSL for mail authentication
- Using Nginx as a WEBDAV reverse proxy
- Dynamic image resizing using Nginx
- Replacing and searching text in Nginx response
- Assembling ZIP files on the fly
- Using Nginx as a HTTP publish-subscribe server
- Transforming XML responses using XSLT templates
- Setting up Etags for static content
- Easy logging of page load times
- Streaming of MP4/H.264 files
- Setting up SCGI sites
- Setting up expiring links
-
Some More Third-party Modules
- Some More Third-party Modules
- Introduction
- Configuring a fair load balancing
- Setting up health checks for backend servers
- Tracking and reporting file upload progress
- Generating circles for round edges using Nginx
- Running Python using Phusion Passenger
- Generating graphs directly from RRDtool in Nginx
- Using Google performance tools
- Serving content directly from GridFS
- Configuring Basic HTTP auth using PAM
- Configuring Basic HTTP auth using Kerberos