LAMP-стек — набор программного обеспечения с открытым исходным кодом, включающий в себя Apache, Mysql и PHP. Он устанавливается на сервер для дальнейшего размещения на сервере сайтов, web-приложений и прочего динамического контента.
В этой статье мы установим LAMP на VDS сервер hoster.ru с Linux Ubuntu 20.04
Внимание, все указанные команды в статье необходимо выполнять под пользователем Root. Если Вы подключились к серверу под другим пользователем, советуем сразу авторизоваться под пользователем root, выполнив команду:
sudo bash
Установка Apache на Ubuntu 20.04
Apache — один из самых популярных web-серверов в мире. Он отлично подойдет для установки на VPS. Установка Apache на Linux производится с помощью apt или apt-get в ubuntu. Apt — более свежая версия пакетного менеджера в Ubuntu, но мы будем рассматривать apt-get.
apt-get update -y
apt-get install apache2 -y
* -y — автоматическое согласие с установкой пакетов
Проверка работоспособности и версии Apache
Чтобы проверить работоспособность установленной Apache, откройте в браузере ссылку http://сервер_IP/
В случае успешной установки вы увидите страницу:
Чтобы проверить версию Apache на Ubuntu через консоль, необходимо выполнить команду:
apache2 -v
Настройка Apache
Все настройки содержатся в папке /etc/apache/:
/etc/apache2/apache2.conf — основные настройки
/etc/apache2/conf-available/* — дополнительные настройки веб-сервера
/etc/apache2/mods-available/* — настройки модулей
/etc/apache2/sites-available/* — настойки виртуальных хостов
/etc/apache2/ports.conf — порты, на которых работает apache
Правила брандмауэра для Apache
Брандмауэр закрывает все неразрешенные соединения. Для доступа к веб-серверу извне необходимо внести его порт в исключения:
ufw allow in 80/tcp
Работа с модулями Apache
Проверка запущенных модулей:
apache2ctl -M
Включение модуля:
a2enmod имя_модуля
Выключение модуля:
a2dismod имя_модуля
Стоит учитывать, что после переключения модулей или внесения правок в конфигурационные файлы необходимо произвести перезапуск службы Apache:
systemctl restart apache2
Установка Mysql Ubuntu 20.04
Теперь, когда мы установили Apache, можно переходить к установке пакета MySQL (система управления базой данных). Это также можно выполнить с помощью пакетного менеджера apt, выполнив команду:
apt-get install mysql-server php7.4-mysql
На этапе установки пакета MySQL система запросит настройку пароля для root-пользователя. Обязательно укажите пароль, так как этот пользователь имеет расширенные права.
Проверка работоспособности и версии Mysql
Команда для проверки работы сервера Mysql:
systemctl status mysql
При этом на экране должен быть примерно такой вывод:
Чтобы проверить версию службы Mysql через консоль, необходимо выполнить команду:
mysql -V
Настройка безопасности MySQL
Теперь нужно выполнить несколько действий для завершения настройки MySQL:
— Создаем структуру директорий базы данных. Для этого выполняем команду:
mysql_install_db
— Удаляем опасные настройки MySQL. Для этого нужно выполнить команду:
mysql_secure_installation
Сервер MySQL запросит у вас текущий root-пароль, а потом предложит сменить его. Можете оставить текущий пароль. Далее согласитесь со всеми изменениями нажатием клавиши «Enter».
Установка PHP
PHP — пакет — компонент LAMP на Ubuntu, будет обрабатывать код PHP, на котором написан тот или иной скрипт. Он запускает приложения, написанные на PHP, и обрабатывает код, отвечающий за получение информации из базы данных.
Для установки пакета PHP выполним команду:
apt-get install php7.4 libapache2-mod-php7.4 php7.4-cli
Обратите внимание, что при установке Apache создался файл конфигурации, в котором прописана приоритетность поиска индексных файлов. Они имеют расширение .html, .htm, .php, .pl и т. д.
Для того чтобы система сначала искала на сервере файлы с .php, откройте файл /etc/apache2/mods-enabled/dir.conf и замените строку
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
на
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
Также необходимо установить дополнительные расширения для языка PHP:
apt-get install php-curl php-json php-cgi php-gd php-zip php-mbstring php-xml php-xmlrpc
Настройка PHP
Основные глобальные параметры содержатся в файле конфигурации PHP: /etc/php/7.4/apache2/php.ini
Если требуется установить локальные настройки для отдельного сайта, они указываются в настройках vhost или в файле .htaccess в каталоге сайта. Нужный параметр и его значение указываются после флага php_value.
Тест PHP в командной строке
Чтобы протестировать PHP, можно использовать команду проверки версии:
php -v
Тест PHP для Apache
Второй возможный способ протестировать PHP — с помощью Apache. Для этого необходимо создать тестовый файл в корневой директории. По умолчанию при установке LAMP на Ubuntu это путь /var/www/html
Создаем тестовый файл:
touch /var/www/html/phpinfo.php
В этом файле необходимо указать код:
?php phpinfo() ?
Теперь откройте адрес в браузере: http://сервер_IP/phpinfo.php
Вы попадете на страницу:
Работа с модулями PHP
Установка пакета PHP включает в себя установку некоторого минимального количества модулей. Получить список установленных модулей можно с помощью команды:
php -m
Также установленные модули указаны в выводе phpinfo.
В заключение хотим отметить, что мы установили некую платформу, которая позволит разместить простой сайт. Однако при желании её можно расширить установкой PhpMyadmin (для управления базой данных) или Nginx. Но об этом мы расскажем в другой статье.