Установка LAMP-стека на сервере или настольном компьютере с Ubuntu 24.04

Данный учебник объяснит процесс установки LAMP-стека на Ubuntu 24.04 LTS. Программный стек представляет собой комплекс инструментов, работающих совместно. LAMP расшифровывается как Linux, Apache, MariaDB/MySQL и PHP — все это программное обеспечение с открытым исходным кодом, доступное для свободного использования.

Это наиболее популярный набор программных инструментов, применяемый для создания динамических веб-сайтов и веб-приложений.

  • Линукс представляет собой операционную систему.
  • Apache представляет собой сервер для работы в интернете.
  • MariaDB/MySQL представляет собой систему управления базами данных.
  • PHP — это язык программирования на стороне сервера, который используется для разработки динамических веб-страниц.

Сервер LAMP на Ubuntu 24.04

Требования

Для реализации данного руководства вам понадобится операционная система Ubuntu 24.04, установленная на вашем локальном ПК или удаленном сервере.

Если вы находитесь в поиске виртуального частного сервера (VPS), обратите внимание на VPS от Kamatera, который предоставляет:

  • Бесплатный пробный период на 30 дней.
  • Цена начинается от 4 долларов в месяц за 1 ГБ оперативной памяти.
  • VPS с высокой производительностью на основе KVM.
  • Девять дата-центров расположены по всему миру, включая США, Канаду, Великобританию, Германию, Нидерланды, Гонконг и Израиль.

Перейдите по приведенной ниже ссылке, чтобы узнать, как настроить свой собственный сервер Linux VPS на Kamatera.

  • Создание VPS-сервера на платформе Kamatera под управлением Linux.

После установки Ubuntu 24.04 на ваш VPS выполните следующие шаги.

Если вам необходимо настроить LAMP-стек с собственным доменным именем, рекомендую приобретать домены у NameCheap. Здесь вы найдете низкие цены, а также бесплатную защиту конфиденциальности Whois на весь срок использования.

Обновите программные пакеты.

Перед установкой стека LAMP рекомендуется обновить репозитории и пакеты программного обеспечения. Для этого выполните следующие команды в вашей системе Ubuntu 24.04.

sudo apt update sudo apt upgrade

Настройте веб-сервер Apache.

Для установки веб-сервера Apache введите следующую команду. Пакет apache2-utils добавит полезные утилиты, включая инструмент для тестирования производительности Apache HTTP сервера (ab).

Читайте также:  Как выполнить установку KDE Plasma 5.16 на Ubuntu 16.04, 18.04 или 19.04

sudo apt install - y apache2 apache2-utils

После установки Apache должен запуститься автоматически. Проверьте его состояние с помощью команды systemctl.

systemctl status apache2

apache2.service - Служба Apache HTTP Сервер Загружена: загружена (/lib/systemd/system/apache2.service; включена; предустановка поставщика: включена) Активна:активный (работающий) since Sat 2024-05-11 11:31:31 CST; 2s ago Docs: https://httpd. apache. org/docs/2.4/ Process: 53003 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 53011 (apache2) Tasks: 55 (limit: 19072) Memory: 6.4M CGroup: /system. slice/apache2.service ├─53011 /usr/sbin/apache2 - k start ├─53012 /usr/sbin/apache2 - k start └─53013 /usr/sbin/apache2 - k start

Совет: Если команда выше не останавливается немедленно, нажмите клавишу Q, чтобы вернуть управление терминалу.

Если сервер не активен, воспользуйтесь командой systemctl для его старта.

sudo systemctl start apache2

Рекомендуется настроить автоматический запуск Apache при старте системы.

sudo systemctl enable apache2

Убедитесь в актуальности версии Apache:

apache2 - v

Server version: Apache/2.4.58 (Ubuntu) Server built: 2024-04-18T15:13:41

Теперь введите публичный IP-адрес вашего сервера с Ubuntu 24.04 в строку браузера. Вы должны увидеть страницу с надписью «It works!», что свидетельствует о корректной работе веб-сервера Apache. Если вы устанавливаете LAMP на локальном компьютере с Ubuntu 24.04, введите 127.0.0.1 или localhost в адресной строке браузера.

Страница по умолчанию сервера Apache в Ubuntu 24.04.

Если соединение не удалось установить или было отклонено, это может означать, что брандмауэр блокирует входящие запросы на TCP-порт 80. Если у вас настроен брандмауэр iptables, выполните следующую команду для открытия TCP-порта 80.

sudo iptables - I INPUT - p tcp --dport 80 - j ACCEPT

Если вы применяете брандмауэр UFW, введите следующую команду для открытия TCP-порта 80.

sudo ufw allow http

Теперь необходимо назначить www-data (пользователь Apache) владельцем корневого каталога документов, который также называется web root. В обычной ситуации он принадлежит пользователю root.

sudo chown www-data:www-data /var/www/html/ - R

По умолчанию Apache применяет системное имя хоста в качестве глобального ServerName. Если это имя не удается разрешить в DNS, возможно, вы столкнетесь с ошибкой после выполнения команды sudo apache2ctl — t.

Читайте также:  Как установить инструменты разработки на CentOS, RHEL и Fedora

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message

Для решения данной проблемы можно установить глобальный ServerN.
ubuntu-22.04-install-LAMP-stack-MariaDB

Теперь вы можете нажать Enter, чтобы ответить на все последующие вопросы, что приведет к удалению анонимного пользователя, отключению удаленного доступа для root и удалению тестовой базы данных. Этот этап является важным условием для обеспечения безопасности базы данных MariaDB. (Имейте в виду, что заглавная буква Y указывает на то, что это стандартный ответ.)

Install-LAMP-stack-on-Ubuntu-22.04-MariaDB-Database-server

В Ubuntu по умолчанию пакет MariaDB использует unix_socket для аутентификации, что позволяет входить в консоль MariaDB, используя имя пользователя и пароль операционной системы. Вы можете воспользоваться следующей командой для доступа без необходимости ввода пароля root для MariaDB.

sudo mariadb - u root

exit;

Убедитесь в актуальности версии сервера MariaDB.

mariadb --version

Мы установили MariaDB версии 10.11.7, как вы можете заметить.

mariadb Ver 15.1 Distrib 10.11.7-MariaDB, for debian-linux-gnu (x86_64) using EditLine wrapper

Инсталляция PHP 8.3

На момент создания данного руководства PHP8.3 является самой последней стабильной версией и демонстрирует незначительное улучшение производительности по сравнению с PHP8.2. Используйте следующую команду для установки PHP8.3 и нескольких распространённых модулей.

sudo apt install php8.3 libapache2-mod-php8.3 php8.3-mysql php-common php8.3-cli php8.3-common php8.3-opcache php8.3-readline php8.3-mbstring php8.3-xml php8.3-gd php8.3-curl

Активируйте модуль Apache для php8.3, после чего выполните перезапуск веб-сервера Apache.

sudo a2enmod php8.3 sudo systemctl restart apache2

Убедитесь, что у вас актуальные данные о версии PHP.

php --version

PHP 8.3.6 (cli) (built: Apr 15 2024 19:21:47) (NTS) Copyright (c) The PHP Group Zend Engine v4.3.6, Copyright (c) Zend Technologies with Zend OPcache v8.3.6, Copyright (c), by Zend Technologies

Для проверки PHP-скриптов на сервере Apache необходимо создать файл info.php в корневой директории документов.

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

Добавьте следующий PHP-код в файл.

Читайте также:  Использование Dnfdragora для управления пакетами

Чтобы сохранить документ в текстовом редакторе Nano, используйте сочетание клавиш Ctrl+O, затем нажмите Enter для подтверждения. Для выхода нажмите Ctrl+X. В адресной строке вашего браузера введите server-ip-address/info.php, заменив server-ip-address на свой действительный IP-адрес. Если вы работаете на локальном компьютере, введите 127.0.0.1/info.php или localhost/info.php.

На вашем сервере должна быть доступна информация о PHP. Это подтверждает, что PHP-скрипты способны успешно выполняться на веб-сервере Apache.

Ubuntu 24.04 с PHP 8.3 и LAMP.

Запуск PHP-FPM вместе с Apache: шаги и рекомендации.

Существует два главных метода исполнения PHP-кода на веб-сервере Apache:

  • Модуль PHP для Apache
  • PHP-FPM.

В описанных выше действиях применяется модуль Apache PHP8.3 для обработки PHP-кода, что обычно является приемлемым вариантом. Однако в определенных ситуациях может потребоваться использование PHP-FPM для выполнения PHP-кода. Вот инструкции по его настройке.

Деактивируйте модуль Apache для PHP 8.3.

sudo a2dismod php8.3

sudo apt install php8.3-fpm

Активируйте модули proxy_fcgi и setenvif.

sudo a2enmod proxy_fcgi setenvif

Включите файл конфигурации /etc/apache2/conf-available/php8.1-fpm.conf.

sudo a2enconf php8.3-fpm

Перезапустите сервер Apache, чтобы новые настройки начали действовать.

sudo
Ubuntu 24.04 с использованием Apache и PHP-FPM.

Поздравляем! Вы успешно настроили LAMP-стек (Apache, MariaDB и PHP 8.3) на Ubuntu 24.04. Чтобы обеспечить безопасность вашего сервера, рекомендуется удалить файл info.php, чтобы исключить возможность доступа несанкционированных пользователей.

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

Дальнейшие действия.

Надеюсь, данное руководство оказалось для вас полезным в установке LAMP-стека на Ubuntu 24.04 LTS. Если вам понравился этот материал, не забудьте подписаться на нашу бесплатную рассылку, чтобы получать еще больше советов и рекомендаций.

Создание резервных копий крайне необходимо на случай взломов, стихийных бедствий в дата-центрах и других непредвиденных ситуаций. Необходимо разработать стратегию резервного копирования для вашего сервера.

  • Создание резервных копий и восстановление баз данных MariaDB через командную строку.
  • Резервное копирование файлов на системах Debian, Ubuntu и Linux Mint с помощью Duplicati.

Конфигурация и отслеживание эффективности сервера на базе Linux.

  • Просто повысите эффективность сети Ubuntu, активировав TCP BBR.
  • Как активировать протокол HTTP/2 в Apache?
  • Анализ производительности сервера на базе Linux с использованием Netdata (2022)