Linux install PHP: установка PHP на Ubuntu и проверка окружения

Короткий ответ: на Linux PHP обычно устанавливают через пакетный менеджер дистрибутива. Для Ubuntu и Debian это apt, для Fedora — dnf, для Arch — pacman. После установки нужно проверить не только php -v, но и то, как PHP подключен к веб-серверу: через Apache-модуль, PHP-FPM для Nginx или только как командная строка

Запрос “linux install php” часто вводит человек, который хочет запустить сайт, WordPress, Laravel, простой скрипт или учебный файл. Поэтому главная ошибка — поставить только php, увидеть версию в терминале и решить, что сайт уже готов. Для реального веб-проекта почти всегда нужны расширения, веб-сервер и понятная проверка через браузер

Установка PHP на Ubuntu

Обновите список пакетов

sudo apt update

Установите базовый PHP, командную строку, FPM и часто нужные расширения

sudo apt install php php-cli php-fpm php-mysql php-curl php-mbstring php-xml php-zip

Проверьте версию в терминале

php -v

Если команда вывела версию PHP, CLI-часть установлена. Но это еще не доказывает, что веб-сервер умеет выполнять PHP-файлы

Как проверить PHP через файл

Создайте файл в каталоге сайта. Для стандартного Apache на Ubuntu это часто /var/www/html, но в вашем проекте путь может быть другим

sudo nano /var/www/html/phpinfo.php

Вставьте код

<?php

phpinfo();

Откройте в браузере

http://your-server/phpinfo.php

Если появилась страница с параметрами PHP, веб-сервер действительно выполняет PHP. После проверки удалите файл, потому что phpinfo() показывает слишком много служебной информации

sudo rm /var/www/html/phpinfo.php

Apache и PHP

Если вы используете Apache, PHP может работать через модуль Apache или через PHP-FPM. На учебном сервере часто достаточно установить Apache и PHP-пакеты

sudo apt install apache2 libapache2-mod-php
sudo systemctl restart apache2

Если сайт открывает PHP-код как текст, значит PHP не подключен к веб-серверу. В этом случае проверяйте установлен ли libapache2-mod-php, включен ли модуль и перезапущен ли Apache

Nginx и PHP-FPM

Nginx сам не выполняет PHP. Он передает PHP-файлы в PHP-FPM, поэтому одной установки php недостаточно

sudo apt install nginx php-fpm
sudo systemctl status php*-fpm

В конфигурации сайта Nginx должен быть блок для PHP. Пример выглядит примерно так, но номер версии и путь к сокету нужно сверять на своем сервере

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}

После изменения конфигурации проверьте синтаксис и перезапустите Nginx

sudo nginx -t
sudo systemctl restart nginx

Какие расширения PHP поставить

Для простого учебного скрипта хватит базового PHP. Для WordPress, CMS и фреймворков обычно нужны расширения

sudo apt install php-mysql php-curl php-gd php-intl php-mbstring php-xml php-zip

Проверить загруженные расширения можно так

php -m

Если расширение нужно именно веб-серверу, после установки перезапустите Apache или PHP-FPM. Терминал может увидеть расширение раньше, чем веб-процесс

Мини-практика

Установите PHP, создайте файл hello.php и запустите его из терминала

<?php

echo "PHP работает\n";
php hello.php

После этого создайте phpinfo.php в папке сайта и откройте его через браузер. Если оба способа работают, у вас настроены и CLI, и веб-часть PHP

Частые ошибки

Поставили PHP без расширений. В итоге php -v работает, а WordPress или Laravel ругаются на отсутствующие модули

Поставили PHP-FPM, но не подключили его к Nginx. В браузере появляется скачивание файла или PHP-код как текст

Редактируют конфигурацию, но не перезапускают сервис. После изменения PHP, Apache, Nginx или FPM почти всегда нужен restart или reload

Путают CLI и веб-версию. php -v показывает PHP для терминала, а сайт может выполняться другим процессом

Оставляют phpinfo.php на сервере. Для диагностики это удобно, но на публичном сайте такой файл лучше удалить сразу после проверки

Что почитать дальше по PHP

Если нужен общий маршрут по теме, откройте рубрику PHP. Для соседних задач пригодятся эти разборы:

Оцените статью
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x