LAMP (Linux, Apache, MySQL, PHP) — это акроним, которым часто обозначают популярный набор программного обеспечения для хостинга сайтов и приложений на PHP. Популярность этого стека ПО для размещения с его помощью сайтов придала простота конфигурации, чрезвычайно большая гибкость веб-сервера Apache и низкая стоимость такого решения: все компоненты являются бесплатными и свободно распространяемыми.

LAMP от Бегета — это классический набор ПО из пакетов дистрибутива, которые установлены и настроены для работы.

Состав приложения

Стек LAMP потребует самостоятельного администрирования и готовности выполнять настройку для вашего проекта. Он состоит из следующих компонентов:

  • Ubuntu 22.04
  • MySQL 8.0.30
  • Apache 2.4.52
  • PHP 8.1 (mod_apache)

Apache + mod_php — веб-сервер, способный в рамках обработки http-запроса выполнять PHP-код (с помощью mod_php). За счет этого с помощью одного веб-сервера осуществляется полная обработка всех входящих запросов.

MySQL — система управления базами данных, которая чаще всех используется в самых популярных CMS и фреймворках на PHP. База данных необходима для хранения данных динамического сайта: содержимого страниц, списка пользователей, каталога товаров и любых других данных.

Полный список устанавливаемых PHP-модулей
  • php-cli — инструменты командной строки для выполнения скриптов PHP
  • php-mysql — обеспечивает взаимодействие с СУБД MySQL
  • php-opcache — расширение, обеспечивающее кеширование опкода и ускоряющее работу приложений
  • php-readline — расширение, реализующее интерфейс к GNU readline

Работа с LAMP

Установка LAMP из панели управления Beget происходит в один клик. Дополнительных параметров при создании сервера указывать не требуется.

Перед установкой можно выбрать конфигурацию сервера и настроить способ подключения по SSH – добавить SSH-ключ, и/или сгенерировать пароль для подключения по SSH. Если не задать ни один из способов аутентификации, пароль будет сгенерирован автоматически и отправлен на e-mail.

После создания сервера и завершения установки LAMP убедитесь, что по адресу http://ip_сервера открывается приветственная страница:

lamp default page

Для подключения к развернутому серверу используйте команду в терминале (bash / Putty) ssh root@ip_сервера. IP-адрес сервера можно узнать в панели управления развернутым сервером.

Для работы с LAMP вам потребуется знать расположение основных файлов и директорий:

  • По умолчанию создается один виртуальный хост, который доступен по адресу http://ip_сервера
  • Директория с файлами для виртуального хоста по-умолчанию располагается в /var/www/html. Для того чтобы веб-сервер мог прочитать содержимое файлов, рекомендуем устанавливать в качестве владельца файлов пользователя www-data.
  • Пароль для пользователя root к MySQL находится в файле /root/.my.cnf

В случае необходимости вы можете самостоятельно изменять любые настройки вашего веб-сервера или СУБД MySQL.

Частые вопросы по LAMP

Где находится конфигурация Apache и виртуального хоста?

Все конфигурационные файлы веб-сервера Apache находятся в директории: /etc/apache2

Конфигурационный файл виртуального хоста, создающегося по-умолчанию, располагается в файле: /etc/apache2/sites-enabled/000-default.conf

После внесения изменений в конфигурацию не забудьте перезапустить веб-сервер: systemctl restart apache2.service

Где находится конфигурация / конфигурационные файлы PHP?

Конфигурационные файлы PHP для mod_php находятся в директории: /etc/php/8.1/apache2

После внесения изменений в конфигурацию для mod_php не забудьте перезапустить веб-сервер: systemctl restart apache2.service

Конфигурационные файлы PHP для CLI находятся в директории: /etc/php/8.1/cli

Как создать отдельного пользователя и доступ в MySQL?
  • Подключитесь к MySQL при помощи команды sudo mysql -uroot
  • После этого создайте нового пользователя следующей командой:
    CREATE USER 'user-name'@'localhost' IDENTIFIED BY 'password';
    Здесь user-name —  логин пользователя, а password — его пароль
  • Дайте новому пользователю все права доступа:
    GRANT ALL PRIVILEGES ON * . * TO 'user-name'@'localhost';
  • Чтобы изменения вступили в силу, выполните команду:
    FLUSH PRIVILEGES;
Как перезапустить Apache / MySQL?

Используйте следующие команды для перезапуска сервисов:

  • Apache2: systemctl restartapache2.service
  • MySQL: systemctl restart mysql.service
Как добавить расширение для PHP?

Большинство расширений уже собраны в виде готовых пакетов в репозитории. Для добавления и подключения нового расширения выполните команды:

  • apt install php-gd, где php-gd — имя желаемого пакета
  • systemctl restartapache2.service
LAMP
Конфигурация:

Бесплатно с каждым сервером:


Автоматический бэкап данных
Круглосуточный мониторинг
Почтовая система
DNS-хостинг
Приватные сети
7