ʻO ka hoʻokō pono ʻana o Apache2

Nui nā poʻe e hoʻohana i ka apache2 ma ke ʻano he kikowaena pūnaewele. Eia nō naʻe, kakaikahi ka poʻe e noʻonoʻo e pili ana i ka hoʻonui ʻana i kāna hana, e pili pono ana i ka wikiwiki o ka hoʻouka ʻana o nā ʻaoʻao pūnaewele, ka wikiwiki o ka hoʻoponopono ʻana i nā palapala (ma ka php), a me ka hoʻonui ʻana i ka ukana CPU a me ka hoʻonui ʻana i ka nui o ka RAM i hoʻohana ʻia.

No laila, pono e kōkua kēia manual i nā mea hoʻohana hoʻomaka (a ʻaʻole wale).
Ua hoʻohana ʻia nā laʻana a pau ma lalo nei ma Raspberry PI 3, Debian 9, Apache 2.4.38, PHP 7.3.

No laila, e hoʻomaka kākou.

1. Hoʻopau i nā modula i hoʻohana ʻole ʻia

ʻO ke ala mua e hoʻopau wale i nā modula āu e hoʻohana ʻole ai:

Hiki ke ʻike ʻia ka papa inoa o nā modula i hoʻohana ʻia i kēia manawa me ke kauoha:

apache2ctl -M

No ka hoʻopau ʻana i ka module, e hoʻohana i ke kauoha:

a2dismod *название модуля*

No laila, e hiki ai i ka module, e hoʻohana i ke kauoha:

a2enmod *название модуля*

E ʻoluʻolu e hoʻomaopopo i ka wā e hoʻohana ai a2dismod, pono e kākau ʻia ka inoa o ka module me ka ʻole o ka huaʻōlelo module ponoʻī.

Eia kekahi laʻana, ināʻoe i loko o ka puka o ke kauoha apache2ctl -Mproxy_module, a laila e hoʻopau iā ia pono ʻoe e hoʻohana i ke kauoha - a2dismod koho

ʻO nā modula e hoʻouka nui i ka ʻōnaehana (mai ka ʻike pilikino) ʻo ia:

  • PHP, Ruby, Perl a me nā modula ʻē aʻe no nā ʻōlelo kākau like ʻole
  • SSL
  • Hoʻohui hou
  • kōmi'ōkuhi

No laila, i nā hihia āu e pono ʻole ai i kēia mau modula, paipai wau e hoʻopau i kēia mau modula.

Eia kekahi, ma hope o ka hoʻopau ʻana i kekahi module, manaʻo wau e hoʻohana i ke kauoha - apache2ctl configtest, ka mea e nānā i ka hoʻonohonoho ʻana o nā pūnaewele i hoʻohana ʻia a inā pono kekahi o nā modula kīnā ʻole no lākou, e hana ia i kahi hewa.

2. Hoʻololi i ka MPM (Multi-Processing Module) a me ka hoʻohana ʻana iā php-fpm

Ma ka maʻamau, ma hope o ka hoʻokomo ʻana, hoʻohana ʻo apache2 i ka MPM Prefork (1 thread no 1 pili), e hoʻemi nui ana i ka hana, akā i ka manawa like e hoʻomaikaʻi i ka paʻa a me ka palekana.

Akā no ka hoʻomaikaʻi ʻana i ka hana, manaʻo wau e hoʻohana i ka MPM Worker, kahi e hiki ai iā ʻoe ke hoʻohana i nā kaula he nui no ka pilina.

No ka hiki iā mākou ke hoʻohana i kēia mau kauoha:

a2dismod mpm_prefork  //Отключаем prefork
a2dismod php7.3  //Отключаем модуль php, который зависит от prefork
a2enmod mpm_worker  //Включаем worker

Eia naʻe, i ka hoʻohana ʻana i ka Worker hiki iā ʻoe ke loaʻa kahi pilikia no ka mea ... Aia ka module php7.3 i ka module Prefork.

No ka hoʻoponopono ʻana i kēia pilikia, e hoʻokomo i ka module php7.3-fpm, e hoʻohana ʻia e holo i nā palapala PHP:

apt-get update && apt-get install php7.3-fpm  //Устанавливаем
systemctl enable php7.3-fpm && systemctl start php7.3-fpm  //Добавляем в автозагрузку и запускаем
a2enmod php7.3-fpm && a2enconf php7.3-fpm.conf  //Включаем модуль и конфиг для него

He mea pono e hoʻomaopopo i ka hoʻohana ʻana i ka php-fpm e hoʻemi i ka nui o ka RAM i hoʻohana ʻia e ka kaʻina apache2 a me ka wikiwiki iki i ka hana ʻana i nā palapala PHP.

3. Panina

No laila, me ia mau hana maʻalahi ua hiki iā mākou ke hoʻonui i ka hana a hoʻemi i ka ukana ma ka mīkini (ma kēia hihia RPI3).

ʻOiaʻiʻo, aia he mau haneli o nā koho optimization ʻē aʻe, e like me ka hiki ʻana i ka compression (he mea pono maoli nō, akā ua hoʻohana ʻia ka hapa nui ma ka paʻamau), hoʻololi i nā hoʻonohonoho MPM (faila hoʻonohonoho), hoʻopau i ka HostnameLookups, etc., akā i kēia ʻatikala ua hoʻāʻo wau e noʻonoʻo ʻO kēia nā mea i kōkua nui iaʻu, a ke manaʻo nei au e kōkua i nā poʻe ʻē aʻe.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka