万本电子书0元读

万本电子书0元读

顶部广告

Nginx HTTP Server - Fourth Edition电子书

售       价:¥

30人正在读 | 0人评论 9.8

作       者:Martin Fjordvald,Clement Nedelcu

出  版  社:Packt Publishing

出版时间:2018-02-14

字       数:41.2万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Make the most of your infrastructure and serve pages faster than ever with Nginx. About This Book ? Discover possible interactions between Nginx and Apache to get the best of both worlds ? Learn to exploit the features offered by Nginx for your web applications ? Get your hands on the most updated version of Nginx (1.13.2) to support all your web administration requirements Who This Book Is For This book is a perfect match to web administrators who are interested in solutions to optimize their infrastructure. Whether you are looking into replacing your existing web server software or integrating a new tool to cooperate with applications that are already up and running, this book is your ideal resource. What You Will Learn ? Download and install Nginx on your system ? Prepare a basic configuration and test your initial setup ? Discover the core functionality of the HTTP module ? Make the most of first- and third-party Nginx modules ? Set up Nginx to work with PHP, Python, and other applications ? Learn how to set up Nginx to work with Apache ? Fully replace Apache with Nginx ? Optimize your architecture with threads or load balancing ? Identify errors in configuration and learn basic troubleshooting techniques ? Consult the exhaustive directive and module index for reference In Detail Nginx is a lightweight HTTP server designed for high-traffic websites, with network scalability as the primary objective. With the advent of high-speed internet access, short loading times and fast transfer rates have become a necessity. This book is a detailed guide to setting up Nginx in ways that correspond to actual production situations: as a standalone server, as a reverse proxy, interacting with applications via FastCGI, and more. In addition, this complete direct reference will be indispensable at all stages of the configuration and maintenance processes. This book mainly targets the most recent version of Nginx (1.13.2) and focuses on all the new additions and improvements, such as support for HTTP/2, improved dynamic modules, security enhancements, and support for multiple SSL certificates. This book is the perfect companion for both Nginx beginners and experienced administrators. For beginners, it will take you through the complete process of setting up this lightweight HTTP server on your system and configuring its various modules so that it does exactly what you need quickly and securely. For more experienced administrators, this book provides different approaches that can help you make the most of your current infrastructure. Nginx can be employed in many situations, whether you are looking to construct an entirely new web-serving architecture or simply want to integrate an efficient tool to optimize your site loading speeds. Style and approach This book aims to serve as a handy reference of all Nginx first-party modules and directives, allowing the reader to develop their own web configuration more efficiently.
目录展开

Title Page

Copyright and Credits

Nginx HTTP Server Fourth Edition

Dedication

Packt Upsell

Why subscribe?

PacktPub.com

Contributors

About the authors

About the reviewer

Packt is searching for authors like you

Preface

Who this book is for

What this book covers

To get the most out of this book

Conventions used

Get in touch

Reviews

Downloading and Installing Nginx

Installing via package managers

Nginx provided packages

Compiling from source

GNU Compiler Collection

The PCRE library

The zlib library

OpenSSL

Downloading Nginx

Websites and resources

Version branches

Features

Downloading and extracting

Configure options

The easy way

Path options

Prerequisite options

Module options

Modules enabled by default

Modules disabled by default

Miscellaneous options

Configuration examples

About the prefix switch

Regular HTTP and HTTPS servers

All modules enabled

Mail server proxy

Build configuration issues

Make sure you installed the prerequisites

Directories exist and are writable

Compiling and installing

Controlling the Nginx service

Daemons and services

User and group

Nginx command-line switches

Starting and stopping the daemon

Testing the configuration

Other switches

Adding Nginx as a system service

System V scripts

About init scripts

Init script for older Debian-based distributions

Init script for SystemD-based distributions

Installing the script

Debian-based distributions

Red Hat-based distributions

Nginx Plus

Summary

Basic Nginx Configuration

Configuration file syntax

Configuration directives

Organization and inclusions

Directive blocks

Advanced language rules

Directives accept specific syntaxes

Diminutives in directive values

Variables

String values

Base module directives

What are base modules?

Nginx process architecture

Core module directives

Events module

Configuration module

Necessary adjustments

Testing your server

Creating a test server

Performance tests

Httperf

Autobench

OpenWebLoad

Upgrading Nginx gracefully

Summary

HTTP Configuration

HTTP core module

Structure blocks

Module directives

Socket and host configuration

listen

server_name

server_name_in_redirect

server_names_hash_max_size

server_names_hash_bucket_size

port_in_redirect

absolute_redirect

tcp_nodelay

tcp_nopush

sendfile

sendfile_max_chunk

send_lowat

reset_timedout_connection

Paths and documents

root

alias

error_page

if_modified_since

index

recursive_error_pages

try_files

Client requests

keepalive_requests

keepalive_timeout

keepalive_disable

send_timeout

client_body_in_file_only

client_body_in_single_buffer

client_body_buffer_size

client_body_temp_path

client_body_timeout

client_header_buffer_size

client_header_timeout

client_max_body_size

large_client_header_buffers

lingering_time

lingering_timeout

lingering_close

ignore_invalid_headers

chunked_transfer_encoding

max_ranges

MIME types

types

default_type

types_hash_max_size

types_hash_bucket_size

Limits and restrictions

limit_except

limit_rate

limit_rate_after

satisfy

internal

File processing and caching

disable_symlinks

directio

directio_alignment

open_file_cache

open_file_cache_errors

open_file_cache_min_uses

open_file_cache_valid

read_ahead

Other directives

log_not_found

log_subrequest

merge_slashes

msie_padding

msie_refresh

resolver

resolver_timeout

server_tokens

underscores_in_headers

variables_hash_max_size

variables_hash_bucket_size

post_action

Using HTTP/2

Module directives

http2_chunk_size

http2_body_preread_size

http2_idle_timeout

http2_max_concurrent_streams

http2_max_field_size

http2_max_header_size

http2_max_requests

http2_recv_buffer_size

http2_recv_timeout

Module variables

Module variables

Request headers

Response headers

Nginx generated

The location block

Location modifier

The = modifier

No modifier

The ~ modifier

The ~* modifier

The ^~ modifier

The @ modifier

Search order and priority

Case 1

Case 2

Case 3

Summary

Module Configuration

Rewrite module

Reminder on regular expressions

Purpose

PCRE syntax

Quantifiers

Captures

Internal requests

error_page

Rewrite

Infinite loops

Server Side Includes

Conditional structure

Directives

Common rewrite rules

Performing a search

User profile page

Multiple parameters

Wikipedia-like

News website article

Discussion board

SSI module

Module directives and variables

SSI commands

File includes

Working with variables

Conditional structure

Configuration

Additional modules

Website access and logging

Index

Autoindex

Random index

Log

Limits and restrictions

Auth_basic module

Access

Limit connections

Limit request

Auth request

Content and encoding

Empty GIF

FLV and MP4

HTTP headers

Addition

Substitution

Gzip filter

Gzip static

Gunzip filter

Charset filter

Memcached

Image filter

XSLT

About your visitors

Browser

Map

Geo

GeoIP

UserID filter

Referer

Real IP

Split clients

SSL and security

SSL

Setting up an SSL certificate

SSL stapling

Secure link

Other miscellaneous modules

Stub status

Degradation

Google-perftools

WebDAV

Third-party modules

Summary

PHP and Python with Nginx

Introduction to FastCGI

Understanding the CGI mechanism

Common Gateway Interface

Fast Common Gateway Interface (FastCGI)

uWSGI and SCGI

Main directives

FastCGI caching and buffering

PHP with Nginx

Architecture

PHP-FPM

Setting up PHP and PHP-FPM

Downloading and extracting

Requirements

Building PHP

Post-install configuration

Running and controlling

Nginx configuration

Python and Nginx

Django

Setting up Python and Django

Python

Django

Starting the FastCGI process manager

Nginx configuration

Summary

Nginx as an Application Server

The reverse proxy mechanism

Nginx proxy module

Main directives

Caching, buffering, and temporary files

Limits, timeouts, and errors

SSL-related directives

Other directives

Variables

Nginx and microservices

nginScript

Supported features

Unsupported features

Main directives

Handler example

Nginx Unit

Summary

Apache and Nginx Together

How Nginx and Apache benefit from each other

An example case

Configuring Apache and Nginx

Reconfiguring Apache

Configuration overview

Resetting the port number

Accepting local requests only

Configuring Nginx

Enabling proxy options

Separating content

Advanced configuration

Improving the reverse proxy architecture

Forwarding the correct IP address

SSL issues and solutions

Server control panel issues

Summary

From Apache to Nginx

Nginx versus Apache

Features

Core and functioning

General functionality

Flexibility and community

Performance

Usage

Conclusion

Porting your Apache configuration

Directives

Modules

Virtual hosts and configuration sections

Configuration sections

Creating a virtual host

.htaccess files

Reminder on Apache .htaccess files

Nginx equivalence

Rewrite rules

General remarks

On the location

On the syntax

RewriteRule

WordPress

MediaWiki

vBulletin

Summary

Introduction to Load Balancing and Optimization

Introduction to load balancing

Understanding the concept of load balancing

Session affinity

The upstream module

Request distribution mechanisms

Using Nginx as a TCP load balancer

The stream module

An example of MySQL load balancing

Thread pools and IO mechanisms

Relieving worker processes

AIO, Sendfile, and DirectIO

Summary

Case Studies

Deploying a WordPress site

Preparing your server and obtaining WordPress

System requirements

PHP configuration

MySQL configuration

Downloading and extracting WordPress

Nginx configuration

HTTP block

Server block

Location blocks

WordPress configuration

Securing communications with HTTPS

Self-signed certificates and certificate authorities

Obtaining your SSL certificate

Enabling HTTPS in your Nginx configuration

Setting up and testing HTTP/2

Creating your ownCloud drive

Getting ownCloud

Nginx configuration

Setting up a self-signed certificate

Summary

Troubleshooting

General tips on Nginx troubleshooting

Checking access permissions

Testing your configuration

Have you reloaded the service?

Checking logs

Installing a log parser

Install issues

The 403 forbidden custom error page

400 Bad Request

Truncated or invalid FastCGI responses

Location block priorities

If block issues

Inefficient statements

Unexpected behavior

Summary

Other Books You May Enjoy

Leave a review - let other readers know what you think

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部