Для тих, хто збирається встановити PHP 8.3, 8.2, 8.1, 8.0 або 7.4 на Fedora, розуміння значущості та універсальності PHP має першорядне значення. PHP, що розшифровується як Hypertext Preprocessor, закріпив за собою місце незамінної мови програмування з відкритим вихідним кодом, призначеної для веб-розробки. Давайте розберемося у величезній кількості переваг, які дає PHP:
Ключові переваги PHP:
- Динамічні веб-сторінки: PHP чудово справляється зі скриптингом на стороні сервера, прокладаючи шлях до динамічного веб-контенту і посилених заходів безпеки.
- Крос-платформна сумісність: PHP легко інтегрується з різними операційними системами, включно з Windows, Mac і Linux, що підкреслює його адаптивність.
- Надійна підтримка спільноти: Процвітаюча спільнота розробників PHP забезпечує постійну підтримку ресурсами, навчальними посібниками та допомогою в усуненні неполадок.
- Широкий спектр вбудованих функцій: PHP має безліч функцій для полегшення повсякденних веб-завдань, від підключення до бази даних до надсилання електронної пошти.
- Інтеграція з базами даних: Сумісність PHP з такими відомими базами даних, як MySQL і PostgreSQL, спрощує роботу над проектами, орієнтованими на роботу з базами даних.
- Взаємодія з сучасними технологіями: Синергія PHP з такими технологіями, як JavaScript і AJAX, сприяє створенню динамічних і зручних веб-додатків.
- Доступ до бібліотек і фреймворків: Екосистема PHP охоплює такі бібліотеки та фреймворки, як Laravel і CodeIgniter, що спрощує і прискорює процес розробки.
- Зручність для початківців: Інтуїтивно зрозумілий синтаксис і структура PHP роблять його ідеальним стартовим майданчиком для розробників-початківців.
- Економічно ефективна розробка: Будучи відкритим вихідним кодом, PHP є бюджетним вибором для підприємств та індивідуальних розробників.
- Оптимізована продуктивність: PHP забезпечує швидку та ефективну роботу, яка в нових версіях доповнюється такими функціями, як JIT-компіляція.
Для користувачів Fedora інтеграція PHP, особливо версій 8.3, 8.2, 8.1, 8.0 і 7.4, не становитиме труднощів завдяки репозиторію Remi PHP.
Імпорт репозиторію Remi RPM
Крок 1: Оновлення Fedora Linux перед встановленням PHP
Оновіть систему перед встановленням PHP і його розширень. Для цього виконайте такі команди в терміналі:
sudo dnf upgrade --refresh
Крок 2: Імпорт репозиторію PHP Remi RPM
Щоб встановити репозиторій PHP Remi на системи Fedora, виконайте такі прості дії. На відміну від RHEL та її клонів, Fedora не потребує EPEL. Щоб імпортувати сховище Remi PHP, що відповідає вашій версії Fedora, виконайте таку команду:
sudo dnf install http://rpms.remirepo.net/fedora/remi-release-39.rpm -y
sudo dnf install http://rpms.remirepo.net/fedora/remi-release-38.rpm -y
sudo dnf install http://rpms.remirepo.net/fedora/remi-release-37.rpm -y
Крок 3: Увімкніть репозиторій PHP Remi
Перш ніж приступати до встановлення різних версій PHP, варто перевірити, які версії доступні в репозиторії REMI. Перерахувавши доступні модулі PHP, ви зможете отримати уявлення про те, що пропонується, і прийняти більш виважене рішення про те, яку версію встановити. Також варто зазначити, що за необхідності ви можете змінити свій вибір пізніше, тому не варто одразу ж приймати остаточне рішення.
sudo dnf module list php
Щоб продовжити встановлення, система може запропонувати вам імпортувати GPG-ключ для сховища Remi.
Якщо це станеться, введіть (Y), щоб продовжити.
Тепер, коли ви ознайомилися з доступними версіями PHP, настав час виконати команду, щоб увімкнути версію, яку ви хочете встановити:
sudo dnf module enable php:remi-8.3 -y
sudo dnf module enable php:remi-8.2 -y
sudo dnf module enable php:remi-8.1 -y
sudo dnf module enable php:remi-8.0 -y
sudo dnf module enable php:remi-7.4 -y
Крок 4: Встановіть PHP 8.3, 8.2, 8.1, 8.0 або 7.4 за допомогою команди DNF
Ви готові до встановлення PHP, оскільки репозиторій Remi PHP тепер увімкнено. Наступні варіанти дозволяють вибрати між Apache і Nginx. Однак, якщо ви знаєте, ви можете додатково налаштувати установку, встановивши спеціальні розширення для вашої CMS або розробки програмного забезпечення.
Apache (httpd) PHP:
sudo dnf install php php-cli -y
Nginx PHP:
sudo dnf install php-fpm php-cli -y
Щоб переконатися в успішному встановленні PHP, виконайте таку команду після завершення процесу встановлення.
php -v
Ви можете виконати наведену нижче команду, якщо хочете отримати найбільш часто використовувані розширення для обраної вами версії PHP. Однак не забудьте видалити всі розширення, які, як ви знаєте, не знадобляться вам у вашому конкретному випадку:
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
Інший спосіб встановлення команд, описаних вище, – це використання формату PHP-{extension}.
sudo dnf install php-{cli,fpm,curl,mysqlnd,gd,opcache,zip,intl,common,bcmath,imagick,xmlrpc,json,readline,memcached,redis,mbstring,apcu,xml,dom,redis,memcached,memcache}
Ви можете виконати наведену нижче команду в будь-який час, щоб переглянути поточні завантажені модулі:
php -m
Рекомендується стежити за встановленими модулями і видаляти непотрібні, оскільки занадто велика кількість встановлених модулів може негативно позначитися на продуктивності системи.
Щоб встановити гілку розробки PHP, використовуйте таку команду:
sudo dnf install php-devel
Щоб встановити додаткові інструменти розробки, наприклад налагодження, використовуйте таку команду:
sudo dnf install php-xdebug php-pcov
Пам’ятайте, що встановлення цієї версії додасть безліч залежностей. Ми не рекомендуємо її встановлювати, якщо тільки вона не потрібна вам для розробки на PHP або у вас немає особливих вимог.
Додатково: Налаштування користувача Nginx для PHP-FPM на Fedora
Коли ви встановлюєте PHP-FPM на дистрибутиви Linux, такі як Debian або Ubuntu, ви зазвичай використовуєте користувача “www-data”. Однак для установок у сімействі RHEL це не так. За замовчуванням служба PHP-FPM запускається під користувачем “Apache”, що не працює з Nginx. Тому необхідно налаштувати конфігурацію для правильного використання.
Спочатку відкрийте файл конфігурації (www.conf) за допомогою такої команди:
sudo nano /etc/php-fpm.d/www.conf
Відкрийте файл конфігурації та замініть користувача і групу (Apache) на користувача і групу (Nginx).
Натисніть (CTRL+O), щоб зберегти, потім натисніть (CTRL+X), щоб вийти.
Внесіть необхідні зміни, а потім перезапустіть службу PHP-FPM.
sudo systemctl restart php-fpm
Приклад коду серверного блоку Nginx PHP-FPM
Для роботи з PHP-файлами в Nginx необхідно налаштувати серверний блок, як показано нижче в прикладі. Використовуйте цей приклад для всіх блоків server{}, які керують файлами PHP, і переконайтеся, що ви включили “location ~ .php$.” у конфігурацію.
Приклад:
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;
}
Щоб переконатися, що зміни, внесені до попереднього коду, не спричинили помилок, ви можете використати таку команду для перевірки конфігурації Nginx.
sudo nginx -t
Приклад виведення:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Щоб завершити налаштування PHP-FPM, необхідно перезапустити службу Nginx.
sudo systemctl restart nginx
Висновок
У цьому посібнику описано кроки зі встановлення PHP у Fedora Linux: використання сховища Remi PHP, встановлення обраної версії за замовчуванням, встановлення поширених розширень і налаштування серверного блоку Nginx для обробки файлів PHP. У статті підкреслюється важливість відстеження залежностей і видалення непотрібних модулів. Крім того, підкреслюється важливість перевірки Nginx на наявність помилок перед перезапуском служби, особливо в живому виробничому середовищі.