Kukhathamiritsa kwa Apache2

Anthu ambiri amagwiritsa ntchito apache2 ngati seva yapaintaneti. Komabe, anthu ochepa amaganiza za kukhathamiritsa ntchito yake, yomwe imakhudza mwachindunji kuthamanga kwa masamba amasamba, kuthamanga kwa zolemba (makamaka php), komanso kuwonjezeka kwa CPU katundu ndi kuwonjezeka kwa RAM yogwiritsidwa ntchito.

Choncho, buku lotsatirali liyenera kuthandiza oyamba kumene (osati okha) ogwiritsa ntchito.
Zitsanzo zonse pansipa zidagwiritsidwa ntchito pa Raspberry PI 3, Debian 9, Apache 2.4.38, PHP 7.3.

Kotero, tiyeni tiyambe.

1. Kuletsa ma modules osagwiritsidwa ntchito

Njira yoyamba ndikungoletsa ma module omwe simugwiritsa ntchito:

Mndandanda wa ma module omwe akugwiritsidwa ntchito pano ukhoza kuwonedwa ndi lamulo:

apache2ctl -M

Kuti mulepheretse module, gwiritsani ntchito lamulo:

a2dismod *Π½Π°Π·Π²Π°Π½ΠΈΠ΅ модуля*

Chifukwa chake, kuti mutsegule moduli, gwiritsani ntchito lamulo ili:

a2enmod *Π½Π°Π·Π²Π°Π½ΠΈΠ΅ модуля*

Chonde dziwani kuti mukamagwiritsa ntchito a2dismod, dzina la module liyenera kulembedwa popanda mawu akuti module.

Mwachitsanzo, ngati muli mu zotsatira za lamulo apache2ctl -M saw proxy_module, ndiye kuti muyimitse muyenera kugwiritsa ntchito lamulo - a2dismod proxy

Ma module omwe amadzaza makinawa kwambiri (kuchokera pazomwe adakumana nazo) ndi:

  • PHP, Ruby, Perl ndi magawo ena azilankhulo zosiyanasiyana zolembera
  • SSL
  • Lembanso
  • CGI

Chifukwa chake ngati simukufuna ma module awa, ndikulimbikitsa kuletsa ma module awa.

Komanso, nditatha kuletsa gawo lililonse, ndikupangira kugwiritsa ntchito lamulo - apache2ctl configtest, yomwe idzayang'ane makonzedwe a malo omwe amagwiritsidwa ntchito ndipo ngati ma modules olumala anali ofunikira kwa iwo, adzapanga cholakwika.

2. Kusintha MPM (Multi-Processing Module) ndi kugwiritsa ntchito php-fpm

Mwachikhazikitso, pambuyo pa kukhazikitsa, apache2 imagwiritsa ntchito MPM Prefork (1 ulusi pa 1 kugwirizana), zomwe zimachepetsa kwambiri ntchito, koma nthawi yomweyo zimathandizira kukhazikika ndi chitetezo.

Koma kuti muwongolere magwiridwe antchito, ndikupangira kugwiritsa ntchito MPM Worker, yomwe imakupatsani mwayi wogwiritsa ntchito ulusi wambiri pa kulumikizana.

Kuti tiyitse timagwiritsa ntchito malamulo awa:

a2dismod mpm_prefork  //ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ prefork
a2dismod php7.3  //ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ php, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ зависит ΠΎΡ‚ prefork
a2enmod mpm_worker  //Π’ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ worker

Komabe, mukamagwiritsa ntchito Worker mutha kukumana ndi vuto chifukwa ... Gawo la php7.3 limadalira gawo la Prefork.

Kuti tithane ndi vutoli, tiyeni tiyike gawo la php7.3-fpm, lomwe lidzagwiritsidwe ntchito kuyendetsa zolemba za 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  //Π’ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ для Π½Π΅Π³ΠΎ

Ndizofunikira kudziwa kuti kugwiritsa ntchito php-fpm kudzachepetsanso kuchuluka kwa RAM yogwiritsidwa ntchito ndi njira ya apache2 ndikufulumizitsa pang'ono kukonza zolemba za PHP.

3. Kutsiliza

Chifukwa chake, ndi zinthu zosavuta zotere tidatha kukhathamiritsa magwiridwe antchito ndikuchepetsa katundu pamakina (panthawiyi RPI3).

Inde, pali mazana a zosankha zina zokhathamiritsa, monga kuthandizira kukanikiza (komwe kuli kothandiza, koma zambiri zathandizidwa kale), kusintha ma MPM (mafayilo osintha), kulepheretsa HostnameLookups, ndi zina zotero, koma m'nkhaniyi ndinayesera lingalirani Izi ndi mfundo zomwe zandithandiza kwambiri, ndipo ndikukhulupirira kuti zithandiza ena.

Source: www.habr.com

Kuwonjezera ndemanga