Jak nainstalovat PHP na Rocky Linux 9/8

PHP je populární univerzální skriptovací jazyk zvláště vhodný pro vývoj webových aplikací. Je rychlý, flexibilní a pragmatický a pohání vše od blogů po nejoblíbenější webové stránky na světě. PHP nabízí rozsáhlou podporu pro různé databáze, což z něj činí základní nástroj pro skriptování na straně serveru.

Následující průvodce demonstruje kroky k instalaci PHP na Rocky Linux 9 nebo 8 pomocí příkazů příkazového řádku. Metoda instalace zahrnuje použití úložiště Remi RPM pro nejnovější stabilní sestavení PHP 8.1, 8.2 a 8.3.

Importujte Remi PHP RPM Repo

Aktualizujte Rocky Linux před instalací PHP

Začněte aktualizací systému Rocky Linux, abyste se připravili na instalaci PHP. Otevřete terminál a zadejte:

sudo dnf upgrade --refresh

Importujte úložiště PHP Remi

Nastavení úložiště EPEL

EPEL (Extra Packages for Enterprise Linux) je zásadní pro další softwarové balíčky v Rocky Linuxu. Níže jsou uvedeny dvě možnosti instalace EPEL na Rocky Linux pro nejnovější verzi EL9 nebo EL8.

Import EPEL pro Rocky Linux 9

Povolit CRB

CRB poskytuje přístup k dalším vývojovým nástrojům. Použití:

sudo dnf config-manager --set-enabled crb
Nainstalujte úložiště EPEL

Chcete-li získat nejnovější vydání EPEL pro Rocky Linux 9:

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

Zahrňte úložiště Remi určené pro EL 9:

sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm -y

Import EPEL pro Rocky Linux 8

Povolte úložiště PowerTools

PowerTools je nezbytný pro vývojové nástroje PHP.

sudo dnf config-manager --set-enabled powertools
Povolte EPEL pro Rocky Linux 8

Nainstalujte úložiště EPEL pro Rocky Linux 8:

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
Importujte úložiště Remi EL 8

S nainstalovaným EPEL importujte Remi RPM obsahující PHP pro EL 8:

sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm -y

Povolte PHP (8.x) z úložiště Remi

Ověřování verzí PHP

Začněte potvrzením dostupných verzí PHP v úložišti Remi. Tím zajistíte, že budete mít přístup k požadované verzi PHP.

Spustit v terminálu:

dnf module list php

Pokud budete vyzváni, importujte klíč GPG pro úložiště Remi zadáním (Y).

Výběr verze PHP

Povolit PHP 8.3

Chcete-li nainstalovat PHP 8.3, stabilní a nejnovější verzi, použijte:

sudo dnf module enable php:remi-8.3 -y

Povolit PHP 8.2

Pro PHP 8.2, vhodné pro aplikace vyžadující tuto konkrétní verzi:

sudo dnf module enable php:remi-8.2 -y

Povolit PHP 8.1

Chcete-li povolit PHP 8.1, ideální pro kompatibilitu s určitými aplikacemi:

sudo dnf module enable php:remi-8.1 -y

Dokončete instalaci PHP

Instalace PHP pro podporu Apache nebo Nginx

Po povolení úložiště Remi PHP můžete nainstalovat PHP přizpůsobené potřebám vašeho webového serveru, buď Apache nebo Nginx.

Instalace Apache (httpd) PHP

sudo dnf install php php-cli -y

Instalace Nginx PHP

sudo dnf install php-fpm php-cli -y

Ověření instalace PHP

Potvrďte instalaci PHP spuštěním:

php -v

Instalace rozšíření PHP

Nainstalujte základní rozšíření PHP na základě potřeb vašeho projektu. Neinstalujte všechna rozšíření, abyste zachovali optimální výkon a zabezpečení.

Standartní instalace

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

Zjednodušená instalace

Pro kompaktní instalační příkaz:

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}

Nyní si pojďme rozebrat, co každé z těchto rozšíření PHP dělá:

  • php-cli: Rozhraní příkazového řádku pro PHP, užitečné při spouštění PHP skriptů v shellu.
  • php-fpm: FastCGI Process Manager, užitečný pro zpracování a obsluhu požadavků PHP.
  • php-curl: Umožňuje připojení a komunikaci s různými typy serverů a protokolů.
  • php-mysqlnd: Nativní ovladač MySQL, používaný pro připojení k databázi MySQL.
  • php-gd: Graphics Draw, užitečné pro vytváření a manipulaci se soubory obrázků.
  • php-opcache: Operační mezipaměť používaná k urychlení provádění PHP.
  • php-zip: Umožňuje pracovat s archivy zip.
  • php-intl: Rozšíření internacionalizace pro práci s mezinárodními znakovými sadami a národními prostředími.
  • php-common: Běžné soubory a nastavení používané více moduly PHP.
  • php-bcmath: Binární kalkulačka umožňuje libovolně přesnou matematiku.
  • php-imagick: Poskytuje metody pro vytváření a úpravu obrázků pomocí knihovny ImageMagick.
  • php-xmlrpc: Umožňuje vytvoření serveru XML-RPC a usnadňuje odesílání požadavků XML-RPC.
  • php-json: Rozšíření JSON (JavaScript Object Notation) pro kódování a dekódování dat JSON.
  • php-readline: Umožňuje čtení řádku dat z terminálu.
  • php-memcached: Poskytuje rychlé, distribuované ukládání objektů do mezipaměti.
  • php-redis: Rozšíření PHP pro propojení s Redis.
  • php-mbstring: Vícebajtový řetězec pro zpracování ne-ASCII řetězců.
  • php-apcu: APC User Cache, rozšíření mezipaměti uživatelů založené na APC.
  • php-xml: XML Parser pro analýzu dokumentů XML.
  • php-dom: Objektový model dokumentu pro manipulaci s dokumenty XML objektově orientovaným způsobem.
  • php-memcache: Poskytuje praktické procedurální a objektově orientované rozhraní pro memcached.
  • php-mýdlo: Používá se pro zápis SOAP serverů a klientů.
  • php-ldap: Lightweight Directory Access Protocol používaný pro přístup a správu adresářových informací.
  • php-pdo: PHP Data Objects, vrstva pro přístup k databázi poskytující jednotnou metodu přístupu k více databázím.

K zobrazení načtených modulů můžete kdykoli použít následující příkaz.

php -m

Pro efektivitu výkonu se doporučuje pravidelné monitorování a odstraňování nepotřebných modulů.

Instalace vývojových nástrojů PHP

Pro účely vývoje nainstalujte vývojovou větev PHP a nástroje pro ladění:

Vývojová větev PHP

sudo dnf install php-devel

Nástroje pro ladění PHP

sudo dnf install php-xdebug php-pcov

Je důležité poznamenat, že instalace této verze přinese více závislostí a nedoporučuje se to dělat, pokud to nemáte specifickou potřebu při vývoji PHP nebo nějaké speciální požadavky.

Nakonfigurujte uživatele PHP-FPM Nginx na Rocky Linux

Úprava PHP-FPM pro Nginx

Distribuce založené na RHEL, jako je Rocky Linux, ve výchozím nastavení používají uživatele „Apache“ pro PHP-FPM, což není vhodné pro nastavení Nginx. Pro optimální fungování s Nginx je nezbytné toto upravit.

Úprava konfigurace PHP-FPM

Otevřete konfigurační soubor

Přístup k www.conf soubor pro úpravu:

sudo nano /etc/php-fpm.d/www.conf
Upravte nastavení uživatele a skupiny

Změňte v souboru uživatele a skupinu Apache na Nginx.

Úprava příspěvku:

Uložte změny stisknutím (CTRL+O), poté ukončete pomocí (CTRL+X).

Restartujte službu PHP-FPM

Po úpravě konfigurace restartujte PHP-FPM, abyste použili změny:

sudo systemctl restart php-fpm

Příklad blokového kódu serveru Nginx PHP-FPM

Konfigurace Nginx pro zpracování PHP

Aby Nginx mohl pracovat se soubory PHP, musí být serverový blok správně nakonfigurován. Následující příklad ukazuje potřebné nastavení v rámci server{} blok pro zpracování souborů PHP.

Konfigurace Nginx PHP-FPM
    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;
    }

Ověření konfigurace Nginx

Po aktualizaci konfigurace ji ověřte, aby nedošlo k syntaktickým chybám.

sudo nginx -t

Očekávaný výstup by měl potvrdit správnost konfigurace:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Restartování služby Nginx

Chcete-li použít změny, restartujte službu Nginx:

sudo systemctl restart nginx

Tento restart je nezbytný pro změny a pro to, aby Nginx začal zpracovávat soubory PHP s novou konfigurací.

Závěr

Dobře, tím naše cesta končí! Úspěšně jsme nastavili PHP na Rocky Linux, vyladili ho pro Apache nebo Nginx a doladili PHP-FPM pro optimální výkon. Pamatujte, že pravidelná kontrola vašich PHP modulů a konfigurací zajišťuje hladký chod. A po jakýchkoli změnách nezapomeňte restartovat své služby.

Joshua James
Následuj mě
Nejnovější příspěvky uživatele Joshua James (vidět vše)

Napsat komentář