A PHP egy népszerű általános célú szkriptnyelv, amely különösen alkalmas webfejlesztésre. Gyors, rugalmas és pragmatikus, a blogoktól kezdve a világ legnépszerűbb webhelyeiig mindenre képes. A PHP széleskörű támogatást kínál különféle adatbázisokhoz, így a szerveroldali szkriptek elengedhetetlen eszköze.
A következő útmutató bemutatja a PHP telepítésének lépéseit Rocky Linux 9 vagy 8 rendszeren parancssori parancsok használatával. A telepítési módszer magában foglalja a Remi RPM tároló használatát a PHP 8.1, 8.2 és 8.3 legújabb stabil buildjéhez.
Remi PHP RPM Repo importálása
Frissítse a Rocky Linuxot a PHP telepítése előtt
Kezdje a Rocky Linux rendszer frissítésével, hogy felkészüljön a PHP telepítésére. Nyissa meg a terminált, és írja be:
sudo dnf upgrade --refresh
PHP Remi Repository importálása
EPEL Repository Setup
Az EPEL (Extra Packages for Enterprise Linux) kulcsfontosságú a Rocky Linux további szoftvercsomagjainál. Az alábbiakban két lehetőség van az EPEL telepítésére Rocky Linux rendszeren a legújabb EL9 vagy EL8 kiadáshoz.
Importálja az EPEL-t Rocky Linux 9-hez
CRB engedélyezése
A CRB további fejlesztési eszközökhöz biztosít hozzáférést. Használat:
sudo dnf config-manager --set-enabled crb
Telepítse az EPEL Repositoriumokat
A Rocky Linux 9 legújabb EPEL-kiadásainak beszerzése:
sudo dnf install \
https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm \
https://dl.fedoraproject.org/pub/epel/epel-next-release-latest-9.noarch.rpm
Szerelje be az EL 9-hez tervezett Remi adattárat:
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm -y
Importálja az EPEL-t Rocky Linux 8-hoz
PowerTools Repository engedélyezése
A PowerTools elengedhetetlen a PHP fejlesztői eszközei számára.
sudo dnf config-manager --set-enabled powertools
Az EPEL engedélyezése a Rocky Linux 8-hoz
Telepítse az EPEL-tárolókat a Rocky Linux 8-hoz:
sudo dnf install \
https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm \
https://dl.fedoraproject.org/pub/epel/epel-next-release-latest-8.noarch.rpm
Importálja a Remi EL 8 adattárat
Ha az EPEL telepítve van, importálja a PHP-t tartalmazó Remi RPM-et EL 8-hoz:
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
Engedélyezze a PHP (8.x) használatát a Remi Repository-ból
PHP verziók ellenőrzése
Először ellenőrizze az elérhető PHP-verziókat a Remi-lerakatban. Ez biztosítja, hogy hozzáférjen a kívánt PHP-verzióhoz.
Végezze el a terminálban:
dnf module list php
Ha a rendszer kéri, importálja a Remi lerakatának GPG kulcsát az (Y) beírásával.
A PHP verzió kiválasztása
PHP 8.3 engedélyezése
A PHP 8.3 stabil és friss verziójának telepítéséhez használja a következőket:
sudo dnf module enable php:remi-8.3 -y
PHP 8.2 engedélyezése
PHP 8.2-hez, amely alkalmas az adott verziót igénylő alkalmazásokhoz:
sudo dnf module enable php:remi-8.2 -y
Engedélyezze a PHP 8.1-et
A PHP 8.1 engedélyezéséhez, amely ideális bizonyos alkalmazásokkal való kompatibilitáshoz:
sudo dnf module enable php:remi-8.1 -y
A PHP telepítésének befejezése
PHP telepítése Apache vagy Nginx támogatáshoz
A Remi PHP tárhely engedélyezése után telepítheti a webszerver igényeihez szabott PHP-t, akár Apache, akár Nginx.
Apache (httpd) PHP telepítés
sudo dnf install php php-cli -y
Nginx PHP telepítés
sudo dnf install php-fpm php-cli -y
PHP telepítés ellenőrzése
Erősítse meg a PHP telepítését a következő futtatásával:
php -v
PHP bővítmények telepítése
Telepítse az alapvető PHP-bővítményeket a projekt igényei alapján. Az optimális teljesítmény és biztonság megőrzése érdekében kerülje az összes bővítmény telepítését.
Szabványos telepítés
sudo dnf install php-cli php-fpm php-curl php-mysqlnd php-gd php-opcache php-zip php-intl php-common php-bcmath php-imagick php-xmlrpc php-json php-readline php-memcached php-redis php-mbstring php-apcu php-xml php-dom php-redis php-memcached php-memcache
Egyszerűsített telepítés
Egy kompakt telepítési parancshoz:
sudo dnf install php-{cli,fpm,curl,mysqlnd,gd,opcache,zip,intl,common,bcmath,imagick,xmlrpc,json,readline,memcached,redis,mbstring,apcu,xml,dom,memcache}
Most bontsuk fel, mit csinálnak ezek a PHP-bővítmények:
- php-cli: Parancssori interfész PHP-hez, hasznos PHP szkriptek futtatásához a shellben.
- php-fpm: FastCGI Process Manager, hasznos PHP kérések kezelésére és kiszolgálására.
- php-curl: Lehetővé teszi a csatlakozást és a kommunikációt különböző típusú szerverekkel és protokollokkal.
- php-mysqlnd: MySQL natív illesztőprogram, MySQL adatbázis-kapcsolatokhoz használatos.
- php-gd: Graphics Draw, hasznos képfájlok létrehozásához és kezeléséhez.
- php-opcache: Opcode Cache, a PHP végrehajtásának felgyorsítására szolgál.
- php-zip: Lehetővé teszi a zip-archívumokkal való munkát.
- php-intl: Nemzetköziesítési bővítmény a nemzetközi karakterkészletekkel és területi beállításokkal való munkához.
- php-common: Több PHP modul által használt általános fájlok és beállítások.
- php-bcmath: A bináris számológép tetszőleges precíziós matematikát tesz lehetővé.
- php-imagick: Módszereket biztosít képek létrehozásához és módosításához az ImageMagick könyvtár használatával.
- php-xmlrpc: Lehetővé teszi az XML-RPC szerver létrehozását, és megkönnyíti az XML-RPC kérések küldését.
- php-json: JSON (JavaScript Object Notation) bővítmény a JSON adatok kódolásához és dekódolásához.
- php-readline: Lehetővé teszi egy sor adat kiolvasását a terminálról.
- php-memcached: Gyors, elosztott memória objektumok gyorsítótárazását biztosítja.
- php-redis: PHP-bővítmény a Redis-szel való interfészhez.
- php-mbstring: Multi-Byte String nem ASCII karakterláncok kezelésére.
- php-apcu: APC User Cache, egy APC-n alapuló userland gyorsítótárazási bővítmény.
- php-xml: XML-elemző XML dokumentumok elemzéséhez.
- php-dom: Document Object Model, az XML dokumentumok objektumorientált kezeléséhez.
- php-memcache: Kényelmes eljárási és objektumorientált felületet biztosít a memcached számára.
- php-szappan: SOAP szerverek és kliensek írásához használják.
- php-ldap: Egyszerűsített címtár-hozzáférési protokoll, amelyet a címtárinformációk elérésére és kezelésére használnak.
- php-pdo: PHP Data Objects, egy adatbázis-hozzáférési réteg, amely egységes hozzáférési módot biztosít több adatbázishoz.
A következő paranccsal bármikor megtekintheti a betöltött modulokat.
php -m
A teljesítmény hatékonysága érdekében javasolt a rendszeres ellenőrzés és a felesleges modulok eltávolítása.
PHP fejlesztői eszközök telepítése
Fejlesztési célból telepítse a PHP fejlesztői ágat és a hibakereső eszközöket:
PHP fejlesztési ág
sudo dnf install php-devel
PHP hibakereső eszközök
sudo dnf install php-xdebug php-pcov
Fontos megjegyezni, hogy ennek a verziónak a telepítése több függőséget is magával hoz, és nem ajánlott ezt megtenni, hacsak nincs rá konkrét igény a PHP fejlesztésben, vagy bármilyen speciális követelmény.
A PHP-FPM Nginx User beállítása Rocky Linuxon
A PHP-FPM beállítása Nginxhez
Az RHEL-alapú disztribúciók, mint például a Rocky Linux, alapértelmezés szerint az „Apache” felhasználót használják a PHP-FPM-hez, ami nem alkalmas az Nginx-beállításokhoz. Az Nginx-szel való optimális működés érdekében ezt feltétlenül módosítani kell.
PHP-FPM konfiguráció szerkesztése
Nyissa meg a konfigurációs fájlt
Hozzáférés a www.conf
szerkeszthető fájl:
sudo nano /etc/php-fpm.d/www.conf
Felhasználói és csoportbeállítások módosítása
Módosítsa az Apache felhasználót és csoportot Nginx-re a fájlban.
Módosítás után:
Mentse el a változtatásokat a (CTRL+O) megnyomásával, majd lépjen ki a (CTRL+X) gombbal.
Indítsa újra a PHP-FPM szolgáltatást
A konfiguráció módosítása után indítsa újra a PHP-FPM-et a változtatások alkalmazásához:
sudo systemctl restart php-fpm
Példa Nginx PHP-FPM szerver blokkkódra
Az Nginx beállítása PHP-feldolgozáshoz
Ahhoz, hogy az Nginx kezelje a PHP-fájlokat, a szerverblokkot megfelelően kell konfigurálni. A következő példa bemutatja a szükséges beállítást a server{}
blokk a PHP fájlok feldolgozásához.
Nginx PHP-FPM konfiguráció
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
Az Nginx konfiguráció érvényesítése
A konfiguráció frissítése után ellenőrizze, hogy ne legyenek szintaktikai hibák.
sudo nginx -t
A várt kimenetnek meg kell erősítenie a konfiguráció helyességét:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Az Nginx szolgáltatás újraindítása
A változtatások alkalmazásához indítsa újra az Nginx szolgáltatást:
sudo systemctl restart nginx
Ez az újraindítás elengedhetetlen a változtatásokhoz és ahhoz, hogy az Nginx elkezdhesse a PHP-fájlok feldolgozását az új konfigurációval.
Következtetés
Rendben, ezzel véget is ért az utazásunk! Sikeresen beállítottuk a PHP-t Rocky Linux rendszeren, átalakítottuk Apache-ra vagy Nginx-re, és finomhangoltuk a PHP-FPM-et az optimális teljesítmény érdekében. Ne feledje, hogy a PHP modulok és konfigurációk rendszeres ellenőrzése biztosítja a dolgok zökkenőmentes működését. És ne felejtse el újraindítani a szolgáltatásokat bármilyen változtatás után.