Конфигуриране на Nginx, losst

Nginx уеб сървър - това е един от най-популярните уеб сървъри с много висок капацитет и бърза обработка на статични запитвания от потребители. Ако са конфигурирани правилно, можете да постигнете много висока производителност на този уеб сървър. Nginx бързо се справят със статични файлове, независимо дали HTML страници или други видове ресурси.







В предишна статия вече видяхме в конфигурацията на Ubuntu инсталирате Nginx и неговите основни параметри, в същата статия, искам повече фокус върху ефективността и изготвяне на уеб сървъра, трябва да се използва по време на битка. Що се отнася до Linux, но сега ние ще разгледа CentOS, тази система се използва често в сървърите с Nginx конфигурация може да има някакъв проблем. Допълнителна настройка Nginx CentOS ще се счита, нека да поговорим как да активирате пълната http2 подкрепа, PageSpeed ​​на Google, както и регулиране на главния конфигурационен файл.

1. Инсталиране Nginx

В официалните хранилища там Nginx CentOS и е най-вероятно вече е инсталиран на вашата система. Но ние искаме да сайт разработен http2 протокол, който ви позволява да прехвърляте всички данни, една връзка, а това повишава производителността. За да работите по http2, което трябва да се създаде сертификат за SSL, но това вече е писано за това в статията сертификат Позволява Encrypt Nginx. Но това не е всичко. за да превключите от редовна SSL на HTTP2.0 в повечето браузъри сега се използва ALPN протокол, и тя се поддържа като се започне с OpenSSL 1.02. По това време двете хранилища имат само OpenSSL 1.01. Ето защо, ние трябва да инсталирате версия Nginx, сглобени с OpenSSL 1.02. Можете да използвате Broken Европейската:

Ако използвате EPEL хранилище, е необходимо да се отбележи, че не е необходимо да се вземат от него Nginx:

# Sudo Yum-довереник-мениджър --save --setopt = epel.exclude = Nginx *;

Сега, за да инсталирате правилната версия на Nginx просто наберете:

# Sudo Yum инсталирате Nginx

най-новата версия на Nginx 1.13.2, с пълна поддръжка ALPN ще бъде инсталиран. След това преминете към настройката.

2. Конфигуриране на Nginx

Първата стъпка е да се разгледа структурата на конфигурационния файл. На пръв поглед, всичко тук може да изглежда много объркващо, но все още е доста логично:







глобални възможности
събития <>
местоположение HTTP сървър<>
>
сървър <>
>

Първо има глобални възможности, които определят основните параметри на програмата, например, от потребител ще бъде пуснат и на броя на процесите. Тогава там са раздел събития. която се описва как Nginx, ще отговори на входящо връзката, а след това отива раздел HTTP. която обединява всички настройки по отношение на HTTP протокола. Това е сървър секция. Всеки такъв раздел е отговорен за отделен домейн, местоположение на сървъра секция, поставени секции. всяка от които отговаря за конкретна заявка URL, моля, имайте предвид, че не файл на сървъра, както в Apache, а именно URL адреса на поискване.

Основните глобални настройки ще направим /etc/nginx/nginx.conf файл. На следващо място, ние считаме, какво ще се промени и какви стойности е желателно да се инсталира. Нека започнем с глобалните опции:

  • потребител - потребител, от чието име на сървъра, работи трябва да бъде собственик на стоките файлове от сайта, както и от името на необходимостта да стартирате PHP-FPM;
  • worker_processes - Nginx редица процеси, които се изпълняват, трябва да инсталирате най-много имате ядра, например, I - 4;
  • worker_cpu_affinity - тази опция ви позволява да зададете всеки процес на индивидуална процесор, включена в автоматичен режим, така че програмата ще избере и какво да се определи;
  • worker_rlimit_nofile - максималният брой файлове, които можете да отворите програмата, за всяко съединение ще бъде най-малко два файла, и всеки процес ще трябва да определите броя на връзките, така че формулата е: worker_processes * worker_connections * 2, worker_connections параметър се анализира по-долу;
  • pcre_jit - активирате тази опция, за да се ускори обработката на регулярните изрази с помощта на JIT компилация;

В случаите раздел трябва да се създаде два параметъра:

Конфигуриране на Nginx, losst
Конфигуриране на Nginx, losst

  • multi_accept - позволява на програмата да направи няколко връзки в същото време, също така ускорява работата с голям брой на връзките;
  • accept_mutex - комплект този параметър на изключване, всички процеси незабавно уведомени за новите съединения;

Също така в раздела за събития се препоръчва използването директива epoll, тъй като това е най-ефективният метод за обработка на входящи връзки за Linux, но този метод се използва по подразбиране, така че аз не виждам причина да го добавите ръчно. С няколко опции на раздел HTTP:

Това е нещо подобно, ще изглежда като настройка Nginx конф:

потребителското Nginx;
worker_processes 4;
worker_cpu_affinity автомобил;
worker_rlimit_nofile 10000;
pcre_jit върху;

error_log /var/log/nginx/error.log предупреди;
load_module "модули / ngx_pagespeed.so";

събития multi_accept върху;
accept_mutex разстояние;
worker_connections 1024;
>