Из этого туториала Вы узнаете, как установить стек LAMP в Ubuntu 18.04 LTS. Программный стек – это набор программных инструментов, связанных вместе. LAMP расшифровывается как: Linux, Apache, MariaDB / MySQL и PHP, все они с открытым исходным кодом и совершенно бесплатны.
Это самый распространенный программный стек для динамических веб-сайтов и веб-приложений. Linux является операционной системой; Apache – веб-сервер; MariaDB / MySQL – это сервер базы данных, а PHP – это язык сценариев на стороне сервера, отвечающий за создание динамических веб-страниц.
Предпосылки
Чтобы следовать этому руководству, вам нужна ОС Ubuntu 18.04, работающая на вашем локальном компьютере или на удаленном сервере.
Шаг 1. Обновление пакетов программного обеспечения
Перед установкой стека LAMP рекомендуется обновить репозиторий и пакеты программного обеспечения. Запустите следующую команду на вашей ОС Ubuntu 18.04.
sudo apt upgrade
Шаг 2: Установите веб-сервер Apache
Введите следующую команду для установки веб-сервера Apache. apache2-utils Пакет установит некоторые полезные утилиты , такие как Apache HTTP.
sudo apt install -y apache2 apache2-utils
После установки Apache должен быть автоматически запущен. Проверьте его статус с systemctl.
systemctl status apache2
Если по какой-то причине у вас не запустился, введите команду
sudo systemctl start apache2
Также рекомендуется включить автоматический запуск Apache во время загрузки системы.
sudo systemctl enable apache2
Проверьте версию Apache:
apache2 -v
Теперь введите общедоступный IP-адрес вашего сервера Ubuntu 18.04 в адресной строке браузера. Вы должны увидеть «Apache2 Ubuntu Default Page», что означает, что веб-сервер Apache работает правильно. Если вы устанавливаете LAMP на локальный компьютер Ubuntu 18.04, введите 127.0.0.1 или localhost в адресной строке браузера.
Если соединение было отклонено или не удалось установить, возможно у вас есть какой-то брандмауэр, который запрещает входящие запросы на порт 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) как владельца корня документа (также известного как веб-корень). По умолчанию он принадлежит пользователю root.
sudo chown www-data:www-data /var/www/html/ -R
Шаг 3: Установите сервер базы данных MariaDB
MariaDB – это полная замена MySQL. Введите следующую команду, чтобы установить его в Ubuntu 18.04.
sudo apt install mariadb-server mariadb-client
После установки сервер MariaDB должен автоматически запуститься. Используйте systemctl, чтобы проверить его статус.
systemctl status mariadb
Если он не запущен, запустите его с помощью этой команды:
sudo systemctl start mariadb
Чтобы включить автоматический запуск MariaDB во время загрузки системы, введите команду
sudo systemctl enable mariadb
Теперь запустите скрипт безопасности после установки.
sudo mysql_secure_installation
Когда появится запрос на ввод пароля root для MariaDB, нажмите клавишу Enter, поскольку пароль root еще не установлен. Затем введите новый пароль root для сервера MariaDB.
Далее вы можете нажать Enter, чтобы ответить на все оставшиеся вопросы, что приведет к удалению анонимного пользователя, отключению удаленного входа в систему root и удалению тестовой базы данных. Этот шаг является основным требованием для безопасности базы данных MariaDB. (Обратите внимание, что заглавная буква Y, означает что это ответ по умолчанию.)
По умолчанию пакет MaraiDB в Ubuntu использует unix_socket для аутентификации входа пользователя, что в основном означает, что вы можете использовать имя пользователя и пароль ОС для входа в консоль MariaDB. Таким образом, вы можете выполнить следующую команду для входа без предоставления пароля root для MariaDB.
sudo mariadb -u root
Для выхода запустите
exit;
Проверьте информацию о версии сервера MariaDB.
mariadb --version
exit;
Шаг 4: Установите PHP7.2
На момент написания этой статьи PHP7.2 является последней стабильной версией PHP и имеет незначительное снижение производительности по сравнению с PHP7.1. Введите следующую команду для установки PHP7.2.
sudo apt install php7.2 libapache2-mod-php7.2 php7.2-mysql php-common php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-readline
Включите модуль Apache php7.2 и перезапустите веб-сервер Apache.
sudo a2enmod php7.2
sudo systemctl restart apache2
Проверьте информацию о версии PHP.
php --version
Чтобы протестировать PHP-скрипты на сервере Apache, нам нужно создать файл info.php в корневом каталоге документа.
sudo nano /var/www/html/info.php
Вставьте следующий PHP-код в файл.
<?php phpinfo(); ?>
Чтобы сохранить файл в текстовом редакторе Nano, нажмите Ctrl+O, затем нажмите Enter для подтверждения. Для выхода нажмите Ctrl+X.
Теперь в адресной строке браузера введите ваш_ip_адрес/info.php. Замените ваш_ip_адрес на ваш фактический IP, или localhost. Если вы следуете этому руководству на локальном компьютере, введите 127.0.0.1/info.php или localhost/info.php.
Вы должны увидеть информацию о PHP вашего сервера. Это означает, что PHP-скрипты будут работать правильно с веб-сервером Apache.
Как запустить PHP-FPM с Apache
Есть два основных способа запуска PHP-кода с веб-сервером Apache:
- Apache PHP module
- PHP-FPM.
На предыдущих этапах модуль PHP7.2 используется для обработки кода PHP, что хорошо. Но в некоторых случаях может потребоваться вместо этого запустить код PHP с PHP-FPM. Давайте посмотрим как это сделать.
Отключите модуль Apache PHP7.2.
sudo a2dismod php7.2
Установите PHP-FPM.
sudo apt install php7.2-fpm
Включите proxy_fcgi и setenvif модуль.
sudo a2enmod proxy_fcgi setenvif
Включите /etc/apache2/conf-available/php7.2-fpm.conf файл конфигурации.
sudo a2enconf php7.2-fpm
Перезапустите Apache, чтобы изменения вступили в силу.
sudo systemctl restart apache2
Теперь, если вы обновите info.php страницу в своем браузере, вы обнаружите, что Server API изменен на FPM/FastCGI, что означает, что веб-сервер Apache будет передавать запросы PHP в PHP-FPM.
Поздравляю! Вы успешно установили стек LAMP (Apache, MariaDB и PHP7.2) в Ubuntu 18.04. Для безопасности вашего сервера, вы должны удалить файл info.php.
sudo rm /var/www/html/info.php
Следующий шаг
Итак, вы только что узнали, как установить LAMP в Ubuntu 18.04. Что дальше? Вы также можете установить phpMyAdmin вместе со своим стеком LAMP.
Как установить phpMyAdmin с Apache (LAMP) в Ubuntu 18.04
А об этом мы поговорим в следующей статье.
Всем спасибо. Если есть какие-либо вопросы, или пожелания, пишите в комментариях ниже.