Nginx + LAMPCentOS 7のむンストヌルず最適な構成

最近、ホスティングからVPSに移行するこずにしたした。CentOS7、Nginx、Apache、PHP、MySQLを䜿甚したす。 このトピックに関する蚘事は倚数ありたすが、倚くの偎面に぀いおは蚀及されおいないため、この蚘事を投皿しお知識のある経隓豊富な人々の意芋を聞きたす。 すでに理解したずおりにサヌバヌを構成するため、コメントから蚘事の関連性を刀断できたす。 Nginxは、サヌバヌの負荷を枛らすために、静的およびApacheダむナミクスPHPスクリプトを提䟛したす。

準備。

プロゞェクトの皌働䞭のサヌバヌのすべおの蚭定を、サヌバヌ構成CPU-2×2000 MHzおよびRAM-2048 MBで適甚したす。

開始するには、CentOS 7がプリむンストヌルされた適切なVPSを芋぀け、 PuTTY経由でSSH経由でサヌバヌに接続したす。

ホスト名ずポヌトを入力しお、[開く]をクリックしたす。

画像

次に、ログむン[Enter]を入力し、次にパスワヌドを入力したすパスワヌドは衚瀺されないこずに泚意しおください[Enter]


パッケヌゞの叀いバヌゞョンを維持しながら、システムを曎新したす。
[root@test ~]# yum update

たたは、すべおのパッケヌゞを曎新するず、叀いパッケヌゞが削陀されたす。
[root@test ~]# yum upgrade

テキストむンタヌフェヌスでファむルマネヌゞャヌをむンストヌルする-Midnight Commander
[root@test ~]# yum install mc

テキスト゚ディタ-Nanoをむンストヌルしたす。
[root@test ~]# yum install nano

サヌバヌで䜿甚可胜なRAMの量ず䜿甚可胜な量、およびSWAPの存圚を確認したす。 RAMが䞍足するず、デヌタがディスクに転送され、サヌバヌの速床が䜎䞋したす。SWAPは望たしくありたせんが、次のこずを保蚌できたす。
[root@test ~]# free -m

サむトのファむル構造ずナヌザヌを䜜成したす。

すべおのサむトのファむル甚のディレクトリフォルダヌを䜜成したす。
[root@test ~]# cd /
[root@test ~]# mkdir -m 755 website

個々のサむトの䞋で、次の手順を実行したす。

各サむトのコンテンツは独自のディレクトリにあるため、アクセス暩を区別するために新しいナヌザヌず個別のディレクトリを䜜成したす。
-bナヌザヌディレクトリが䜜成されるフォルダヌ
-mディレクトリを䜜成したす
-Uナヌザヌず同じ名前のグルヌプを䜜成したす
-s / bin / falseナヌザヌシェルを無効にしたす
[root@test ~]# useradd name.site -b /website/ -m -U -s /bin/false

サむトデヌタサむトファむル、ログ、䞀時ファむルのディレクトリを䜜成したす。
[root@test ~]# mkdir -p -m 754 /website/name.site/www
[root@test ~]# mkdir -p -m 754 /website/name.site/logs
[root@test ~]# mkdir -p -m 777 /website/name.site/tmp

所有者ずグルヌプをサブフォルダヌを含むディレクトリに倉曎したす。
[root@test ~]# chown -R name.site:name.site /website/name.site/

ディレクトリぞのアクセス暩を倉曎したす-name.site
[root@test ~]# chmod 755 /website/name.site

Nginxをむンストヌルしたす。

むンストヌル手順は、 Nginxの公匏Webサむトで提䟛されおいたす。

CentOSでyumリポゞトリを構成するには、ファむル/etc/yum.repos.d/nginx.repoを䜜成したす。
[root@test ~]# cd /etc/yum.repos.d
[root@test ~]# touch nginx.repo

nginx.repoファむルを開きたす。
[root@test ~]# nano /etc/yum.repos.d/nginx.repo

このコンテンツを貌り付けおファむルを保存したす。
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=1
enabled=1

眲名を確認するには、キヌをダりンロヌドしお、rpmパッケヌゞマネヌゞャヌにむンポヌトしたす。
[root@test ~]# rpm --import http://nginx.org/keys/nginx_signing.key

Nginxをむンストヌルしたす。
[root@test ~]# yum install nginx

以䞋を開始したす。
[root@test ~]# systemctl start nginx.service

画像

䞀時停止
[root@test ~]# systemctl stop nginx.service

ApacheずPHPをむンストヌルしたす。

ApacheをむンストヌルしたすCentOS-httpd䞊
[root@test ~]# yum install httpd

PHPをむンストヌルしたす。
[root@test ~]# yum install php

Apacheを起動したす。
[root@test ~]# systemctl start httpd.service

画像
䞀時停止
[root@test ~]# systemctl stop httpd.service

Nginxを構成したす。

スタヌトアップに远加
[root@test ~]# systemctl enable nginx.service

メむン構成ファむルを開きたす。
[root@test ~]# nano /etc/nginx/nginx.conf

線集しお保存したす
/etc/nginx/nginx.conf
user nginx;
worker_processes 2;
pid /var/run/nginx.pid;

events {
worker_connections 1024;
multi_accept on;
}

http {
error_log /var/log/nginx/error.log warn;
access_log off;

charset utf-8;
server_tokens off;

include /etc/nginx/mime.types;
default_type application/octet-stream;

reset_timedout_connection on;
client_header_timeout 15;
client_body_timeout 30;
send_timeout 15;
keepalive_timeout 5;
keepalive_requests 30;
client_max_body_size 8m;

limit_rate_after 30M;
limit_rate 500K;

open_file_cache max=10000 inactive=3m;
open_file_cache_min_uses 2;
open_file_cache_valid 1m;

sendfile on;
tcp_nodelay on;
tcp_nopush on;

include /etc/nginx/conf.d/*.conf;
}


Nginxを起動するナヌザヌ
user nginx;

ワヌクプロセスの数を瀺したすプロセッサコアの数ずハヌドディスクの数に䟝存したす。ディスクヘッドは高速に移動できないためです。
worker_processes 2;

実行䞭のサヌバヌのプロセスID
pid /var/run/nginx.pid;

むベントセクション
events {
#
}

むベントブロック内で、サヌバヌぞの同時接続の最倧数worker_processes×worker_connections
worker_connections 1024;

むベントブロック内で、可胜な限り接続を受け入れたす。
multi_accept on;

httpセクション、残りはその䞭にありたす
http {
#
}

指定されたパスでログ゚ラヌレベル譊告、゚ラヌ、クリティカル、アラヌト
error_log /var/log/nginx/error.log warn;

アクセスログ゚ントリを無効にしたすハヌドドラむブは「ありがずう」ず蚀いたす
access_log off;

デフォルトの゚ンコヌドを蚭定したす。
charset utf-8;

Nginxバヌゞョンの衚瀺をオフにしたす。
server_tokens off;

MIMEタむプを接続したす。
include /etc/nginx/mime.types;

ファむルのMIMEタむプを刀別できない堎合、デフォルトではファむルはバむナリになりたす。
default_type application/octet-stream;

クラむアントが応答しない堎合、接続を閉じたす。
reset_timedout_connection on;

クラむアント芁求ヘッダヌを15秒以内で読み取りたす。
client_header_timeout 15;

クラむアント芁求本文を30秒以内で読み取りたす-間隔は、芁求本文の転送党䜓ではなく、2぀の連続した読み取り操䜜の間でのみ蚭定されたす。
client_body_timeout 30;

クラむアントが15秒以䞊応答を受け入れない堎合、接続をリセットしたす。
send_timeout 15;

5秒以内で接続を開いたたたにしたす。
keepalive_timeout 5;

1぀のクラむアントからのオヌプン接続芁求の最倧数
keepalive_requests 30;

8メガバむトを超えるリク゚ストは受け付けたせん。
client_max_body_size 8m;

1人のナヌザヌが無料のトラフィックチャネル党䜓を占有しないように、30 MB埌にデヌタ出力の速床に制限を課したす。
limit_rate_after 30M;

制限埌の1぀の接続内でのクラむアントの最倧速床は500 Kb / s以䞋になりたす。
limit_rate 500K;

ファむルの最倧数を蚭定したす。ファむルに関する情報はキャッシュに栌玍され、3分以内にファむルが再床芁求されない堎合は削陀されたす。
open_file_cache max=10000 inactive=3m;

ファむルが2回以䞊芁求された堎合、キャッシュに入れたす
open_file_cache_min_uses 2;

キャッシュの関連性を1分ごずに確認したす。
open_file_cache_valid 1m;

仲介なしで静力孊を䞎える
sendfile on;

デヌタをバッファリングしないでください
tcp_nodelay on;

1぀のバッチでヘッダヌを送信したす。
tcp_nopush on;

接続蚭定
include /etc/nginx/conf.d/*.conf;

サむトごずに、仮想Nginxホストを䜜成したす。

Nginxがサむトファむルにアクセスできるようにするには、nginxナヌザヌをname.siteグルヌプに远加したす。
[root@test ~]# usermod -a -G name.site nginx

次に、構成ファむルを䜜成したす。
[root@test ~]# touch /etc/nginx/conf.d/name.site.conf

ファむルを開きたす。
[root@test ~]# nano /etc/nginx/conf.d/name.site.conf

線集しお保存したす
/etc/nginx/conf.d/name.site.conf
server {
listen 80;
server_name name.site www.name.site;
#access_log /website/name.site/logs/nginx_access.log;
error_log /website/name.site/logs/nginx_error.log;

location / {
proxy_pass http://127.0.0.1:8080/;
proxy_read_timeout 300s;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_buffering off;
}

location ~* \.(css|js|png|gif|jpg|jpeg|ico)$ {
root /website/name.site/www;
expires 1d;
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}


サヌバヌはポヌト80でリッスンしたす。
listen 80;

サヌバヌ名は、リク゚ストが実行されるブロックを決定し、ドメむン名が瀺されたす。
server_name name.site www.name.site;

特定のサむトのNginx゚ラヌログぞのパス
error_log /serves/name.site/logs/nginx_error.log;

Apacheリク゚ストのリダむレクト
proxy_pass http://127.0.0.1:8080/;

Apacheサヌバヌから応答を読み取るずきにタむムアりトを超えた堎合、300秒埌に接続を切断したす。
proxy_read_timeout 300s;

ヘッダヌを枡す
proxy_set_header Host $host;

クラむアントIPの転送
proxy_set_header X-Real-IP $remote_addr;

芁求が行われたサヌバヌのリストを送信し、独自のサヌバヌを远加したす。
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

プロキシサヌバヌのバッファリングを無効にしたす。
proxy_buffering off;

Nginxは統蚈を提䟛したす
location ~* \.(css|js|png|gif|jpg|jpeg|ico)$ {
root /serves/name.site/www;
expires 1d;
}

Apacheを構成したす。

むンストヌルしたApacheモゞュヌルを確認したす。 私はapache2-mpm-preforkを持っおいたす1぀のスレッドを持぀1぀のプロセスが1぀の接続を凊理したす、PHPず䞀緒に安党であるこずが掚奚されたす
[root@test ~]# apachectl -V

httpd.confを開きたす。
[root@test ~]# nano /etc/httpd/conf/httpd.conf

線集しお保存したす
httpd.conf
ServerRoot "/etc/httpd"
DocumentRoot "/website"
Include conf.modules.d/*.conf

User apache
Group apache

Listen 127.0.0.1:8080
ServerName 127.0.0.1:8080
ServerAdmin root@localhost

ServerSignature Off
ServerTokens Prod

RLimitMEM 786432000
TimeOut 250

AddDefaultCharset utf-8
DefaultLanguage ru

KeepAlive Off
ContentDigest Off
EnableSendfile off

ErrorLog "logs/error_log"
LogLevel error

<IfModule mime_module>
TypesConfig /etc/mime.types
</IfModule>

<Directory />
DirectoryIndex index.php
AllowOverride none
Require all denied
</Directory>

<IfModule mpm_prefork_module>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 30
MaxRequestsPerChild 2500
</IfModule>

<Files ".ht*">
Require all denied
</Files>

IncludeOptional sites-enabled/*.conf


Apacheルヌトディレクトリをむンストヌルしたす。
ServerRoot "/etc/httpd"

サむトファむルが保存されるディレクトリ
DocumentRoot "/website"

蚭定ファむルをロヌドしたす
Include conf.modules.d/*.conf

サヌバヌを起動するナヌザヌ
User apache

サヌバヌを起動するグルヌプ
Group apache

芁求を受け入れるIPずポヌトを指定したす;倖郚からは、このサヌバヌは衚瀺されたせん
Listen 127.0.0.1:8080

自己決定のためのホスト名ずポヌト
ServerName 127.0.0.1:8080

゚ラヌが発生した堎合にクラむアントに送信されるメヌルアドレス
ServerAdmin root@localhost

システムずApacheサヌバヌのバヌゞョン情報の送信を無効にしたす。
ServerSignature Off

ヘッダヌでApacheに関するクラむアント情報の送信を無効にしたす。
ServerTokens Prod

メモリ䜿甚量を750メガバむトに制限したす。
RLimitMEM 786432000

リク゚ストの受信、凊理、コンテンツのNginxサヌバヌぞの送信の最倧時間
TimeOut 250

゚ンコヌドを蚭定したす。
AddDefaultCharset utf-8

コンテンツの蚀語を蚭定したす。
DefaultLanguage ru

1぀の接続で倚数のリク゚ストの凊理をオフにしたす。
KeepAlive Off

Content-MD5 HTTPヘッダヌの生成をオフにしたす。
ContentDigest Off

Apacheはstaticを提䟛しないため、切断したす。
EnableSendfile off

指定されたパス/ etc / httpd / logs / error_logにApache゚ラヌを曞き蟌みたす。
ErrorLog "logs/error_log"

゚ラヌを蚘録するレベルを瀺したす。
LogLevel error

MIMEタむプを接続したす。
<IfModule mime_module>
TypesConfig /etc/mime.types
</IfModule>

ディレクトリセクション
<Directory />
...
</Directory>

Directoryブロック内で、ディレクトリぞのパスが指定されおいる堎合、index.phpを指定したす::
DirectoryIndex index.php

Directoryブロック内で、.htaccessのアクセス情報の䞊曞きを犁止したす。
AllowOverride none

ディレクトリブロック内で、サヌバヌファむルぞのアクセスを拒吊したす。
Require all denied

Mpm_prefork_moduleセクション
<IfModule mpm_prefork_module>
...
</IfModule>

Apacheを起動した埌、mpm_prefork_moduleブロック内に5぀のプロセスを䜜成したす。
StartServers 5

mpm_prefork_moduleブロック内の未䜿甚プロセスの最小数すべおのプロセスがビゞヌの堎合、新しい空きプロセスが開始されたす
MinSpareServers 5

mpm_prefork_moduleブロック内では、未䜿甚スペアプロセスの最倧数は次のずおりです。
MaxSpareServers 10

同時に開始できる子プロセスの最倧数であるmpm_prefork_moduleブロック内で、残りはキュヌに入れられたす子プロセスの増加に䌎い、メモリ消費が増加したす。
MaxClients 30

mpm_prefork_moduleブロック内で、指定された数のリク゚ストが凊理された埌、プロセスが再起動したすオヌバヌフロヌ時に必芁-メモリリヌク
MaxRequestsPerChild 2500

.htaccessぞの近接アクセス
<Files ".ht*">
Require all denied
</Files>

蚭定ファむルをロヌドしたす
IncludeOptional sites-enabled/*.conf

各サむトに察しお、Apache仮想ホストを䜜成したす。

各サむトのグルヌプにapacheナヌザヌを远加したす。
[root@test ~]# usermod -a -G name.site apache

Apache仮想ホスト構成ファむル甚のディレクトリを䜜成したす。
[root@test ~]# mkdir /etc/httpd/sites-enabled

構成ファむルを䜜成したす。
[root@test ~]# touch /etc/httpd/sites-enabled/name.site.conf

ファむルを開きたす。
[root@test ~]# nano /etc/httpd/sites-enabled/name.site.conf

線集しお保存したす
/etc/httpd/sites-enabled/name.site.conf
<VirtualHost *:8080>
ServerName name.site
ServerAlias www.name.site

DocumentRoot /website/name.site/www

<Directory "/website/name.site">
AllowOverride None
Require all granted
</Directory>

DirectoryIndex index.php

ErrorLog /website/name.site/logs/error.log
CustomLog /website/name.site/logs/requests.log combined
</VirtualHost>



VirtualHostブロック、リッスンするポヌトが瀺されたす。
<VirtualHost *:8080>
...
</VirtualHost>

ドメむン名
ServerName name.site

ドメむンミラヌ
ServerAlias www.name.site

このサむトのファむルが保存されるディレクトリ
DocumentRoot /website/name.site/www

サむトファむルを共有する
Require all granted

ディレクトリぞのパスが指定されおいる堎合、デフォルトで以䞋を開きたす。
DirectoryIndex index.php

特定のサむトのApache゚ラヌログぞのパス
ErrorLog /website/name.site/logs/error.log

アクセスログパス
CustomLog /website/name.site/logs/requests.log combined

NginxずApacheの確認。

Apacheをスタヌトアップに远加したす。
[root@test ~]# systemctl enable httpd.service

ファむルを䜜成、線集、保存したす。
[root@test ~]# touch /website/name.site/www/index.php
[root@test ~]# nano /website/name.site/www/index.php

php蚭定をコピヌしたす。
[root@test ~]# cp /etc/httpd/conf.d/php.conf /etc/httpd/sites-enabled/php.conf

NginxずApacheを起動したす。
[root@test ~]# systemctl start nginx.service
[root@test ~]# systemctl start httpd.service

PHPを構成したす。

php.iniを開きたす。
[root@test ~]# nano /etc/php.ini

線集しお保存したす
/etc/php.ini
engine = On
expose_php = Off
short_open_tag = Off
zlib.output_compression = Off
disable_functions = exec, passthru, shell_exec, system, proc_open, popen, curl_exec, curl_multi_exec, parse_ini_file, show_source, etc

display_startup_errors = Off
display_errors = Off
log_errors = On
error_log = "/usr/local/zend/var/log/php.log"
ignore_repeated_errors = Off
ignore_repeated_source = Off
html_errors = On

implicit_flush = Off
output_buffering = 4K
realpath_cache_size = 2M
realpath_cache_ttl = 1800
zend.enable_gc = On

max_input_time = 200
max_execution_time = 30
file_uploads = On

memory_limit = 256M
post_max_size = 8M
upload_max_filesize = 2M
max_file_uploads = 4

extension_dir = "/usr/local/zend/lib/php_extensions"
date.timezone = Europe/Moscow
default_mimetype = "text/html"
default_charset = "UTF-8"

variables_order = "CGPS"
register_argc_argv = Off
auto_globals_jit = On
enable_dl = Off

allow_url_fopen = On
allow_url_include = Off


PHPむンタヌプリタヌをオンにしたす。必芁に応じお、特定のサむトでオフにするこずができたす。
engine = On

PHPに぀いおクラむアントに送信されるヘッダヌを無効にしたす。
expose_php = Off

PHPタグの短い曞き蟌みを無効にする<...>
short_open_tag = Off

ペヌゞの圧瞮をオフにしたす。
zlib.output_compression = Off

危険な機胜を無効にしたす。
disable_functions = exec, passthru, shell_exec, system, proc_open, popen, curl_exec, curl_multi_exec, parse_ini_file, show_source, etc

PHPの起動䞭に発生した゚ラヌを衚瀺しないでください。
display_startup_errors = Off

゚ラヌを衚瀺しない
display_errors = Off

ディスプレむをオフにした埌の゚ラヌを蚘録したす。
log_errors = On

゚ラヌが曞き蟌たれるファむル
error_log = "/usr/local/zend/var/log/php.log"

特定のファむルおよび行で発生する同じ゚ラヌを蚘録しないでくださいignore_repeated_source-オフにする必芁がありたす。
ignore_repeated_errors = Off

オンにするず、異なるファむルや行で発生する可胜性のある同じ゚ラヌは蚘録されないため、オフにしたす。
ignore_repeated_source = Off

゚ラヌメッセヌゞを衚瀺するずきにHTMLタグをオフにしたす。
html_errors = On

デヌタをバッファに远加したす。
implicit_flush = Off

すべおのファむルの出力バッファリング 、最倧数
output_buffering = 4K

realpath cacheを䜿甚しお、 statの呌び出し回数を枛らしたす
realpath_cache_size = 2M

キャッシュストレヌゞ時間を30分に蚭定したす。
realpath_cache_ttl = 1800

埪環リンクのコレクタヌが含たれたす。
zend.enable_gc = On

サヌバヌでデヌタを受信する最倧時間POST、GET、HEADを瀺したす。この時間は、PHPの開始からスクリプトが実行されるたでの時間です。
max_input_time = 200

スクリプトの最倧実行時間を指定したす倀はApacheの堎合よりも倧きくありたせん-タむムアりト -set_time_limitの代わりに
max_execution_time = 30

サヌバヌぞのファむルのアップロヌドを蚱可したす。
file_uploads = On

スクリプトが䜿甚できる最倧メモリサむズ
memory_limit = 256M

POSTメ゜ッドによっお送信されるデヌタの最倧サむズ以䞋の倀-memory_limit。
post_max_size = 8M

アップロヌドされたファむルの最倧サむズpost_max_sizeより小さい必芁がありたす
upload_max_filesize = 2M

1぀のリク゚ストで転送できるファむルの数
max_file_uploads = 4

拡匵モゞュヌルがあるディレクトリぞのパス
extension_dir = "/usr/local/zend/lib/php_extensions"

タむムゟヌンを蚭定したす。
date.timezone = Europe/Moscow

デヌタ型
default_mimetype = "text/html"

゚ンコヌディングUTF-8を蚭定したす。
default_charset = "UTF-8"

倉数の凊理順序は、$ _COOKIE、$ _GET、$ _POST、$ _SERVERです。
variables_order = "CGPS"

argvおよびargc倉数を宣蚀しないでください。
register_argc_argv = Off

䜿甚時にSERVERおよびENV倉数が䜜成されるため、パフォヌマンスが向䞊したす。
auto_globals_jit = On

動的読み蟌みをオフにするず、セキュリティに圱響したす。
enable_dl = Off

URLによる倖郚ファむルの操䜜を蚱可したす。
allow_url_fopen = On

倖郚ファむルの䜿甚を無効にしたす。
allow_url_include = Off

MySQLをむンストヌルしお構成したす。

my.cnfを切り離したす。
[root@test ~]# nano /etc/mysql/my.cnf

競合するMySQLク゚リを凊理する䞊列プロセスの数コアの数に2を掛けたもの
thread_concurrency = 4

新しいテヌブルのデフォルト゚ンコヌディングを蚭定したす。
default-character-set = utf8

InnoDBテヌブルを䜿甚したす。
default-storage-engine = InnoDB

RAMのテヌブルのむンデックス甚のバッファのサむズを蚭定したすMyISAMテヌブルに関連
key_buffer_size = 5M

バッファヌデヌタずテヌブルむンデックス-InnoDB
innodb_buffer_pool_size = 300M

MySQLによっお䜜成された䞀時テヌブルに割り圓おられるRAMの最倧サむズ
tmp_table_size = 50M

キャッシュ内にあるオヌプンテヌブルの最倧数
table_open_cache = 64

情報をディスクに曞き蟌むために䜿甚されるデヌタバッファヌはInnoDBです。
innodb_log_buffer_size = 0M

ク゚リキャッシュをオフにしたす 。
query_cache_size = 0

各ストリヌム内のデヌタの゜ヌトORDER BYたたはグルヌプGROUP BYに䜿甚されるバッファヌのサむズ
sort_buffer_size = 512K

各スレッドの各テヌブルにメモリを割り圓おたすが、この倀を倧きくするず、ク゚リの実行速床が䜎䞋する可胜性がありたす。
read_buffer_size = 512K

-ORDER BYを䜿甚したク゚リの゜ヌト速床に圱響したす。
read_rnd_buffer_size = 1M

これらのク゚リでむンデックスが䜿甚されおいない堎合、JOINを䜿甚したバッファサむズ
join_buffer_size = 2M

スタックサむズ、タスクのリストを保存する堎所テヌブルの開閉、リク゚ストの実行など
thread_stack = 1M

接続バッファずその結果にメモリを割り圓お、max_allowed_pa​​cketに増やすこずができたす。
net_buffer_length = 30K

1぀のリク゚ストで転送できるデヌタの最倧サむズ
max_allowed_packet = 5M

同時接続の最倧数
max_connections = 75

キュヌに入れるこずができる接続の数
back_log = 250

ロヌカルホストのみをリッスンする
bind-address = 127.0.0.1

TCP / IP接続を䜿甚せず、゜ケットを介しおデヌタを転送したす。
skip-networking

MySQLサヌバヌでのおおよそのメモリ消費量を蚈算するには理解したずおり、次の匏を䜿甚できたすApacheサヌバヌには既に750 MBが割り圓おられおおり、Nginxサヌバヌに任せる必芁があるこずを忘れないでください
key_buffer_size + innodb_buffer_pool_size + tmp_table_size + ((sort_buffer_size + read_buffer_size + read_rnd_buffer_size + join_buffer_size + thread_stack) × max_connections) = ?

セキュリティに぀いお少し。

ルヌトずしおログむンするこずは望たしくないため、新しいナヌザヌを䜜成したす。
[root@test ~]# adduser newuser

ナヌザヌのパスワヌドを蚭定したす-newuser
[root@test ~]# passwd newuser

sudoパッケヌゞをむンストヌルしたす。
[root@test ~]# yum install sudo

新しいナヌザヌをsudoに远加したす。
[root@test ~]# gpasswd -a newuser wheel

ポヌト22を介しおSSHに接続する堎合は、倉曎する必芁があり、sshd_configを開きたす。
[root@test ~]# nano /etc/ssh/sshd_config

ポヌトを空きポヌトに倉曎したすコンピュヌタヌにむンストヌルされおいるファむアりォヌルを介しおポヌト22を閉じ、54139などの新しいポヌトを開くこずを忘れないでください。
Port 54139

空のパスワヌドでのログむン詊行を犁止したす。
PermitEmptyPasswords no

ルヌトログむンを拒吊したす。
PermitRootLogin no

新しいナヌザヌのみが端末にログむンできるようにしたす-
newuser
AllowUsers newuser

sshを再起動したす。
[root@test ~]# service sshd restart


PS Nginxはphp-fpmで䜿甚できたすが、Apacheが適切に構成されおいる堎合、パフォヌマンスに倧きな違いはないずいう意芋がありたす。

サヌバヌのセキュリティずパフォヌマンスに特に泚意を払いたいので、゚ラヌや欠萜を芋぀けた堎合はコメントに曞いおください。必芁に応じお蚘事を修正したす。

Source: https://habr.com/ru/post/J311212/


All Articles