Установка PHP 7.4 на Ubuntu 20.04
PHP аббревиатура гипертекстового препроцессора. а в общем PHP — это язык сценариев с открытым исходным кодом, используемый в веб-разработке. PHP работает на стороне сервера и является источником для популярных веб-решений, таких как WordPress и Moodle.
В Ubuntu 20.04 PHP 7.4 — эта версия доступна в репозитории пакетов по умолчанию на момент написания этой статьи. Однако PHP 8.0 — это последняя версия языка PHP.
В этой инструкции мы сосредоточимся на установке PHP 7.4 для веб-серверов Apache и NGINX, работающих на Ubuntu 20.04.
Требования к установке PHP 7.4 на Ubuntu
- Веб-сервер Apache или NGINX, работающий на Ubuntu 20.04
- Пользователь с привилегией sudo
Установка PHP 7.4 для Apache
Начните с проверки обновлений пакетов с помощью команды ниже.
Затем установите PHP 7.4 с помощью приведенной ниже команды.
После установки запустите следующую команду, чтобы проверить версию PHP.
Тест PHP 7.4 на Apache Ubuntu
Чтобы проверить установку PHP 7.4 на Apache и чтобы создать index.php файл в корне документа по умолчанию, выполните команду ниже
Затем скопируйте и вставьте пример PHP-кода ниже.
Сохраните внесенные изменения и закройте index.php.
Теперь откройте веб-браузер и введите serverIP/index.php.
Примечание: serverIP должен быть вашим фактическим IP-адресом сервера. Например, 192.168.1.100/index.php
Вы должны увидеть информационную страницу PHP 7.4, которая подтверждает, что PHP работает правильно.
Возможно вам будет интересно: Авторизация пользователей Joomla через Active Directory (LDAP)
Установка PHP 7.4 для NGINX Ubuntu
Из коробки NGINX нет возможности обрабатывать документы PHP. Поэтому необходимо установить и настроить PHP FastCGI Process Manager, то есть PHP-FPM.
Во-первых, проверьте наличие обновлений пакетов, если вы еще этого не сделали.
Затем установите PHP-FPM 7.4 на Ubuntu 20.04 с помощью приведенной ниже команды.
После этого откройте файл блока сервера NGINX по умолчанию с помощью команды:
$ sudo nano /etc/nginx/sites-available/default
В этом файле найдите строку, которая начинается с index, а затем добавьте index.php к списку.
Затем найдите раздел # pass PHP scripts to FastCGI server и убедитесь, что он выглядит так, как вы видите в блоке кода ниже. В конкретные строки были раскомментированы.
# pass PHP scripts to FastCGI server # location ~ .php$ < include snippets/fastcgi-php.conf; # # # With php-fpm (or other unix sockets): fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # # With php-cgi (or other tcp sockets): # fastcgi_pass 127.0.0.1:9000; >
Сохраните изменения и закройте файл блока сервера.
Тестирование PHP 7.4 на NGINX Ubuntu
Чтобы протестировать PHP 7.4 на NGINX, создайте index.php файл в корне. Это можно сделать командой ниже.
Теперь скопируйте и вставьте приведенный ниже пример PHP-кода в текстовый редактор.
Сохраните и закройте index.php файл. Откройте веб — браузер и перейдите в serverIP/index.php… Например 192.168.1.100/index.php
Вы должны увидеть страницу PHP 7.4 info.
Заключение
При помощи этой инструкции вы сможете установить и настроить PHP 7.4 на веб-серверах Apache и NGINX. Если есть вопросы напишите комментарий.
Как установить и настроить PHP 8.0 на Ubuntu 20.04
PHP — это очень популярный серверный язык программирования, используется для создания динамических веб-сайтов и приложений. PHP8.0 бесплатен и поставляется с открытым исходным кодом. PHP 8 привносит в язык множество оптимизаций и мощных функций, включая компилятор Just-in-time (JIT), атрибуты, именованные аргументы и многое другое .
Из этой статьи вы узнаете, как установить PHP 8.0 на Ubuntu 20.04 и настроить его для работы с веб-серверами Apache и NGINX.
Требования
- Веб-сервер NGINXили Apache, работающий на Ubuntu 20.04
- Пользователь с привилегиями sudo
Добавьте репозиторий ondre/php
На момент написания этой статьи PHP 7.4 является последней версией, доступной в репозитории пакетов Ubuntu по умолчанию.
Чтобы установить PHP 8, вам нужно добавить репозиторий ondre/php. В этом частном архиве пакетов доступно несколько версий PHP и расширений.
Выполните следующую команду, чтобы добавить репозиторий ondre/php в Ubuntu 20.04.
Затем выполните приведенную ниже команду, чтобы проверить наличие обновлений пакета.
Установка PHP 8 для Apache
После добавления репозитория ondre/php и проверки наличия обновлений пакетов, вы можете запустить следующую команду для установки PHP 8 на Ubuntu 20.04.
При появлении запроса введите y, чтобы продолжить.
После успешного завершения установки вы можете проверить версию PHP с помощью следующей команды.
Тест PHP 8 на Apache в Ubuntu
Чтобы убедиться, что PHP правильно работает с Apache, создайте index.php файл в корне документа по умолчанию следующим образом.
Скопируйте и вставьте приведенный ниже пример PHP — кода в текстовый редактор.
Теперь откройте веб-браузер и перейдите на страницу serverIP/index.php… Замените serverIP на ваш фактическим IP-адресом сервера. Если вы видите информационную страницу PHP 8.0.3, то все в порядке.
Возможно вам будет интересно: Как установить PostgreSQL с pgAdmin4 на Linux Mint 20
Установка PHP 8 для NGINX сервера Ubuntu
В отличие от Apache, NGINX не имеет встроенных возможностей для обработки PHP-документов. Чтобы обойти эту проблему, вам нужно установить PHP-FPM (то есть PHP FastCGI Process Manager) и настроить его для работы с NGINX.
Первое что требуется это убедится в том, что вы добавили репозиторий ondre/php.
Кроме того, проверьте наличие обновлений пакета с помощью команды:
Чтобы установить PHP-FPM 8.0 на Ubuntu 20.04, выполните приведенную ниже команду.
Теперь проверьте версию PHP с помощью команды:
Затем откройте файл блока сервера NGINX по умолчанию, делается это следующим образом.
$ sudo nano /etc/nginx/sites-available/default
Прокрутите вниз, пока не дойдете до строки, начинающейся с index, а затем добавьте index.php к списку, как показано на рисунке ниже.
Прокрутите страницу вниз еще дальше, пока не увидите раздел # pass PHP scripts to FastCGI server. Измените эту часть конфигурационного файла так, чтобы она выглядела так, как вы видите в приведенном ниже блоке кода.
# pass PHP scripts to FastCGI server
#
location ~ .php$ include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php8.0-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
>
Обратите внимание, что определенные строки были раскомментированы, а php7.4-fpm.sock был заменен на php8.0-fpm.sock.
Сохраните внесенные изменения и закройте файл блокировки сервера.
Тест PHP 8 на NGINX
Чтобы убедиться, что после установки PHP 8, он правильно работает с NGINX. Создайте index.php файл в корне документа по умолчанию.
Скопируйте и вставьте приведенный ниже пример PHP — кода в текстовый редактор.
Сохраните и закройте index.php файл.
Возможно вам будет интересно: Как установить и настроить MySQL на Ubuntu 20.04 LTS
И последнее, откройте веб-браузер и перейдите к server IP/index.php… Заменив serverIP на ваш фактический IP-адрес сервера.
Если вы видите страницу PHP версии 8.0.3 info, то вы все сделали правильно.
Заключение
В этой статье мы описали шаги по установке и настройке PHP 8 на веб-серверах Apache и NGINX. Если у вас есть какие-либо вопросы пожалуйста оставьте комментарии.
Установка LAMP в Ubuntu 20.04
LAMP — это популярный набор программного обеспечения для работы с веб-сервером. LAMP назван по первым буквам входящих в его состав компонентов: Linux — операционная система, Apache — веб-сервер, MySQL — СУБД, PHP — язык программирования, используемый для создания веб-приложений.
В этой статье мы рассмотрим, как установить LAMP Ubuntu 20.04 несколькими способами: с помощью утилиты tasksel и вручную с помощью пакетного менеджера.
Установка LAMP в Ubuntu 20.04
1. Установка пакетов LAMP с помощью утилиты tasksel
Утилита tasksel позволяет устанавливать наборы пакетов различных программ буквально в одну команду. Она разработана для Debian, но может использоваться и в Ubuntu. Для её установки выполните в терминале команду:
sudo apt -y install tasksel
Далее, чтобы установить Lamp на Ubuntu, достаточно выполнить команду:
sudo tasksel install lamp-server
Установка займёт определенное время, так как утилите необходимо скачать все необходимые пакеты. После завершения установки вы получите полностью работающий стек LAMP.
Если вы не хотите использовать tasksel, вы можете установить все пакеты по отдельности из стандартных репозиториев и настроить их для совместной работы.
Для начала необходимо установить веб-сервер Apache2:
sudo apt -y install apache2
На момент написания статьи актуальной версией PHP в официальных репозиториях Ubuntu считалась версия 7.4. Самая же последняя официальная версия PHP от разработчиков 8.0.9 по состоянию на 29 июля 2021 года.
Также необходимо установить дополнительные расширения для языка PHP, которые понадобятся для создания будущих проектов и их дальнейшей публикации на хостинг:
sudo apt -y install php-curl php-json php-cgi php-gd php-zip php-mbstring php-xml php-xmlrpc
3. Настройка брандмауэра
По умолчанию брандмауэр закрывает все неразрешённые входящие подключения. Поэтому, чтобы к вашему веб-серверу можно было получить доступ извне, необходимо добавить его порт в исключения:
sudo ufw allow in 80/tcp
Для начала необходимо убедиться, что веб-сервер Apache и СУБД MySQL успешно запустились и при необходимости запустить их. Смотрим статус apache, выполнив команду в терминале:
sudo systemctl status apache2
В разделе Active должно быть active (running). Те же самые действия необходимо сделать для проверки MySQL:
sudo systemctl status mysql
Если в статусах вместо active будет inactive (dead), то сервисы необходимо запустить вручную:
sudo systemctl start apache2
sudo systemctl status mysql
Для проверки наберите в адресной строке браузера IP-адрес сервера, куда вы устанавливали LAMP, в качестве примера выбран localhost:
Если при открытии вы увидели страницу, которая изображена на скриншоте выше, это означает что веб-север apache успешно запущен и работает. Теперь необходимо проверить правильно ли работает PHP. Создайте файл в директории /var/www/html при помощи следующей команды:
sudo vi /var/www/html/phpinfo.php
Вместо vi можно использовать любой другой текстовый редактор на ваш выбор (nano, emacs, gedit и др.).
В файл phpinfo.php впишите следующую команду:
Далее откройте адрес localhost/phpinfo.php в браузере. Если всё работает, вы должны увидеть страничку, которая изображена ниже на скриншоте:
Также можно проверить, работает ли интеграция с СУБД MySQL. Если расширение PHP для MySQL установлено, то на странице с phpinfo будет размещен блок с информацией:
На данном этапе процесс проверки пройден успешно. Далее мы перейдем к настройке стека LAMP на Ubuntu 20.04.
5. Настройка Apache
Для обработки запросов будет использоваться модуль mpm_prefork. Данный модуль запускает по отдельному процессу на каждый запрос. Иначе говоря, каждый процесс одновременно обрабатывает только 1 поток на одно соединение. Для начала необходимо выключить mpm_event и mpm_worker и только потом включить модуль mpm_prefork:
sudo a2dismod mpm_event
sudo a2dismod mpm_worker
sudo a2enmod mpm_prefork
Включаем модуль mod_rewrite. Это модуль, предназначенный для преобразования URL адресов. Модуль использует в своей работе правила, которые могут быть описаны как в конфигурации сервера (httpd.conf), так и в файлах .htaccess непосредственно в файловой структуре Вашего сайта.
sudo a2enmod rewrite
Если вы хотите использовать файлы httaccess для настроек, то необходимо в файле /etc/apache2/apache2.conf изменить значение AllowOverride с None на All для нужных местоположений, например, для /var/www.
Откройте файл apache2.conf при помощи любого текстового редактора:
sudo vi /etc/apache2/apache2.conf
Найдите следующий блок:
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
И замените AllowOverride None на AllowOverride All, затем сохраните изменения и закройте файл. Перезапустите apache:
sudo systemctl restart apache2
6. Настройка PHP
По умолчанию короткие теги, обрамляющие скрипты PHP, отключены. Это может привести к тому, что некоторые скрипты, использующие эти теги, могут не выполнятся. Для включения этой возможности откройте файл php.ini при помощи любого текстового редактора:
sudo vi /etc/php/7.4/apache2/php.ini
Найдите short_open_tag = Off и замените на:
После внесения всех изменений необходимо перезапустить Apache:
sudo systemctl restart apache2
7. Настройка MySQL
По умолчанию MySQL не очень хорошо настроена в плане безопасности. Необходимо задать пароль суперпользователя и удалить гостевой доступ. Для выполнения всех этих задач запустите в терминале следующую команду:
Во всех следующих вопросах нужно отвечать утвердительно путем ввода y/Y или Yes:
- Запретить удалённый вход для пользователя root;
- Запретить гостевой вход;
- Удалить временные таблицы;
- Обновить привилегии пользователей.
Введите пароль пользователя root, который вы задали на этапе запуска mysql_secure_installation.
Не перепутайте пароль от пользователя root который присутствует в операционной системе Ubuntu и пользователя root в MySQL. Это разные пользователи, соответственно вы должны вводить пароль именно к учетной записи root, которая присутствует в MySQL.
Чтобы полностью удалить LAMP из системы, достаточно удалить все пакеты, которые вы установили ранее:
sudo apt -y purge apache2 mysql-server php7.4 libapache2-mod-php7.4 php7.4-mysql php-curl php-json php-cgi php-gd php-zip php-mbstring php-xml php-xmlrpc
Команда purge позволяет удалить не только пакеты, но и их конфигурационные файлы. Если вы хотите оставить конфигурационные файлы, используйте команду remove.
Выводы
В этой статье мы разобрали, как выполняется установка LAMP Ubuntu 20.04. Как видите, это не очень сложно и с такой задачей может справиться даже новичок. Если у вас остались вопросы, оставляйте их в комментариях!
Как установить PHP на Ubuntu 22.04
PHP, сокращение от PHP hypertext preprocessor, является одним из серверных языков программирования. Он широко используется в веб-разработке для поддержки и запуска PHP-приложений на веб-сервере. Впервые он появился в 1995 году, но в настоящее время поддерживается компанией Zend technologies. Многие системы управления контентом (CMS), такие как WordPress и Lavaravel, написаны на PHP.
В этой статье мы покажем, как установить PHP на Ubuntu 22.04 и совместить его с Apache и Nginx.
Возможно вам будет интересно: Как установить сканер уязвимостей GVM на Ubuntu 20.04
Требование к установке
Чтобы начать работу, вот что вам нужно:
- Экземпляр Ubuntu 22.04 с доступом по SSH.
- Пользователь sudo, настроенный для выполнения задач пользователя root.
Включение репозитория PHP на Ubuntu
На момент написания этого руководства версия PHP, которая в настоящее время размещена или предоставляется репозиториями Ubuntu — PHP 8.1.
Чтобы установить PHP с помощью менеджера пакетов APT из репозитория Ubuntu по умолчанию, введите:
А для того чтобы воспользоваться преимуществами последних версий PHP. Требуется включить PPA-репозиторий Ondrej, который предоставляет последние версии PHP. Это PPA, который поддерживается Ondrej Sury, разработчиком Debian, который упаковывает PHP, начиная с PHP 5.
Чтобы выполнить это, для начала установите предварительные условия
sudo apt install software-properties-common -y
Далее включите Ondrej PPA, делается это с помощью следующей команды.
sudo add-apt-repository ppa:ondrej/php
Затем обновите индекс локальных пакетов, чтобы начать использовать только что добавленный репозиторий PHP.
Установка PHP 8.0 с Apache
Установив PPA, вы можете установить желаемую версию PHP. Если в качестве веб-сервера у вас используется Apache, у вас есть возможность запустить PHP как модуль Apache PHP или PHP-FPM.
Чтобы установить PHP 8.0 на Ubuntu как модуль Apache, выполните следующие команды:
sudo apt update
sudo apt install php8.0 libapache2-mod-php8.0
После установки перезагрузите Apache, для того чтобы изменения вступили в силу:
sudo systemctl restart apache
Чтобы убедиться, что PHP 8.0 установлен, выполните следующую команду:
Установка PHP 8.1 с Apache
PHP 8.1 — это последняя версия PHP на данный момент. Так как она поставляется по умолчанию в репозитории, вы просто устанавливаете PHP и PHP-модуль Apache следующим образом:
sudo apt update
sudo apt install php libapache2-mod-php
Теперь снова перезапустите Apache, чтобы перезагрузить модуль PHP. Сделать это можно командой:
sudo systemctl restart apache
Чтобы убедиться, что PHP 8.1 установлен, выполните следующую команду:
Настройка Apache с помощью PHP-FPM
PHP-FPM (FastCGI Process Manager) — это инструмент для ускорения работы веб-сервера и является лучшей альтернативой PHP.
По умолчанию PHP-FPM не включен в Apache, и нам требуется сделать еще один шаг чтобы включить его. Но сначала выполните следующие команды.
sudo apt update
sudo apt install php8.0-fpm libapache2-mod-fcgid
Чтобы включить PHP-FPM, выполните:
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.0-fpm
Чтобы изменения вступили в силу, перезапустите веб-сервер Apache.
Возможно вам будет интересно: Как установить и настроить PHP 8.0 на Ubuntu 20.04
Установка PHP 8.0 с помощью Nginx
Веб-сервер Nginx по умолчанию не имеет встроенной поддержки для обработки файлов PHP. Поэтому для обработки php-файлов будет использоваться PHP-FPM.
Чтобы это стало возможным, выполните следующие команды для установки PHP и PHP-FPM
sudo apt update
sudo apt install php8.0-fpm
После установки PHP-FPM должен запуститься автоматически без какого-либо вмешательства. Чтобы убедиться, что PHP-FPM запущен, выполните следующую команду.
Статус active (Активный) будет означать, что служба запущена и работает.
Установка PHP 8.1 с Nginx
Аналогичным образом вы можете установить PHP 8.1 с FPM для Nginx на Ubuntu следующим образом:
sudo apt update
sudo apt install php-fpm
После установки подтвердите статус службы php fpm с помощью следующей команды.
Настройка Nginx с помощью PHP-FPM
Nginx не имеет возможности обрабатывать php-скрипты и приложения. Поэтому требуется настроить Nginx для работы с PHP-FPM.
В блоке вашего сервера Nginx добавьте следующие строки, чтобы позволить Nginx обрабатывать php-файлы.
Чтобы применить изменения, перезапустите Nginx.
Установка PHP 7.4 с Apache
Для установки PHP 7.4 используйте PPA, упомянутый ранее. Затем вы можете установить эту версию с помощью менеджера пакетов APT.
sudo apt update
sudo apt install php7.4 libapache2-mod-php
Это установит php вместе с дополнительными модулями php.
Установка PHP 7.4 с Nginx
Если вы используете Nginx, PHP-FPM необходим для обработки файлов php. Поэтому установите PHP-FPM на Ubuntu с помощью следующей команды.
sudo apt update
sudo apt install php7.4-fpm
После установки PHP-FPM следующим шагом будет настройка Nginx для работы с PHP-FPM.
В конфигурации вашего виртуального хоста добавьте следующий код
location ~ \.php$ include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
>
>
Чтобы применить изменения, перезапустите веб-сервер
Как установить расширения PHP
Расширения PHP — это плагины или специальные библиотеки, которые расширяют функциональность PHP. Расширения можно легко установить, используя синтаксис.
sudo apt install php-[имя расширения].
Например, чтобы установить расширения php-dg, php-zip, php-mbstring, php-opcache, php-pear и php-mysqli, выполните команду:
Не забудьте перезапустить веб-сервер Apache с PHP-FPM после установки расширений PHP.
Переключение между версиями PHP
Предположим, что вы установили разные версии PHP. Как переключиться с одной версии на другую?
Во-первых, вы можете посмотреть на несколько версий PHP, установленных в вашей системе. Для этого выполните следующую команду:
sudo update-alternatives —config php
Вот вывод, который вы получите.
Чтобы перейти с PHP 7.4 на PHP 8.1, выполните следующие команды:
sudo a2dismod php7.4
sudo a2enmod php8.1
Приведенные выше команды просто отключают PHP 7.4 и включают PHP 8.0 на ubuntu. Вы можете перейти с одной версии на другую, просто поменяв местами версии. Чтобы применить сделанные изменения, перезапустите веб-сервер Apache.
sudo systemctl apache2 restart
Проверка версии PHP
Чтобы проверить версию PHP, установленную по умолчанию, выполните команду
Вы должны получить результат, аналогичный приведенному здесь:
PHP 8.1.2 (cli) (built: Apr 7 2022 17:46:26) (NTS) Copyright (c) The PHP Group Zend Engine v4.1.2, Copyright (c) Zend Technologies with Zend OPcache v8.1.2, Copyright (c), by Zend Technologies.
Еще один способ проверить, работает ли PHP — это создать файл info.php в корне документа. Файл info.php — это файл, в котором содержится информация об установленной по умолчанию версии PHP и другие сведения о модулях php.
Итак, создайте файл в каталоге /var/www/html следующим образом.
Затем добавьте следующий код
Сохраните файл. Теперь откройте браузер и перейдите по URL
Оба этих способа показывают, что PHP установлен.
Возможно вам будет интересно: Как изменить размер диска
Заключение
В этом руководстве мы показали различные варианты как установить PHP и как выполнить установку необходимых модулей PHP на Ubuntu 22.04. PHP 8.1 — это версия по умолчанию, предоставляемая официальными репозиториями Ubuntu. Чтобы установить последние версии PHP, вам необходимо включить Ondrej PPA в вашей системе Linux.