Опубликовано 07.06.2019
Установка LAMP сервера в Ubuntu 16.04

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

Linux — операционная система Linux;
Apache — веб-сервер;
MariaDB или MySQL — СУБД;
PHP — язык программирования, используемый для создания веб-приложений (помимо PHP могут подразумеваться другие языки, такие как Perl и Python).

Все действия нужно выполнять от обычного пользователя с правами sudo или от суперпользователя root. Итак, поехали.

Содержание:

  1. Установка и настройка Linux
  2. Установка и настройка Apache
  3. Установка и настройка MySQL
  4. Установка и настройка PHP

1. Установка и настройка Linux

Это в скором времени будет в отдельной статье.

Перед установкой желательно обновить репозитории и саму систему:

sudo apt update && sudo apt upgrade

2. Установка и настройка Apache

Apache является одним из самых популярных веб-серверов в мире.

Установить Apache очень просто, пакеты этого веб-сервера доступны в стандартном репозитории Ubuntu. Делается это так:

sudo apt install apache2

Теперь, если открыть http://localhost (или зайти по айпи вашего сервера, например http://127.0.0.1), то можно увидеть такую страницу:

Apache Demo Page

После установки веб-сервера его нужно настроить. Для начала создадим новый сайт. Создадим новый файл в /etc/apache2/sites-available/100-newsite.conf:

sudo touch /etc/apache2/sites-available/100-newsite.conf

Префикс 100- означает порядок загрузки файлов конфигурации. Теперь добавим туда нашу конфигурацию:

nano /etc/apache2/sites-available/100-newsite.conf

И добавим туда эти строки:

<VirtualHost *:80>
    ServerName mysite.com # Домен сайта
    ServerAdmin [email protected] # Email администратора
    DocumentRoot /var/www/mysite # Путь к сайту

    ErrorLog ${APACHE_LOG_DIR}/mysite.error.log # Файл лога ошибок
    CustomLog ${APACHE_LOG_DIR}/mysite.access.log combined # Файл лога доступа к сайту
</VirtualHost>

Домен сайта можно получить задав его через hosts-файле (если сайт локальный) или купив его.

По аналогии можно создать и другие сайты, увеличивая префикс 100-, 110-, 200- и так далее.

Что бы указать пути, отличные от /usr/share и /var/www нужно прописать специальные строки в /etc/apache2/apache2.conf:

Там где есть такие строки:

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

Ниже нужно добавить это же, только вместо /var/www/ указать ваш путь.

Еще можно изменить пользователя, от которого нужно запускать веб-сервер. Делается это в файле /etc/apache2/envvars:

export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data

Нужно изменить эти строки, APACHE_RUN_USER это название пользователя, а APACHE_RUN_GROUP это название группы для пользователя. Лучше всего указывать одно и то же. По умолчанию используется пользователь www-data.

3. Установка и настройка MySQL

MySQL – это реляционная система управления базами данных (СУБД), которая систематизирует и хранит данные сайта.

Чтобы установить MySQL введите:

sudo apt install mysql-server

После завершения установки нужно запустить сценарий безопасности, который удалит ненадёжные параметры и защитит БД от несанкционированного доступа.

sudo mysql_secure_installation

Сценарий предложит указать root-пароль MySQL, а затем задаст ряд вопросов.

Предупреждение: Сценарий предложит включить параметр VALIDATE PASSWORD PLUGIN. Если этот параметр включен, пароли, которые не соответствуют указанным критериям, будет отклонены системой MySQL как ошибка. Это вызовет проблемы, если вы используете слабый пароль в программах, которые автоматически настраивают учетные данные пользователя MySQL (например PhpMyAdmin). Безопаснее отключить этот параметр и использовать надёжные уникальные пароли.

На остальные вопросы можно нажать Y и Enter. Это удалит анонимных пользователей и тестовые базы данных, отключит удалённый root логин и обновит текущие настройки MySQL.

4. Установка и настройка PHP

PHP – это серверный язык сценариев для создания динамических страниц. Он позволяет запускать сценарии, подключаться к БД MySQL и передавать обработанный контент в браузер для отображения.

Кроме самого PHP нужно поставить еще модули к нему и модуль для Apache.

sudo apt install php libapache2-mod-php php-mcrypt php-mysql php-pdo php-curl php-json php-cgi php-mbstring php-xml php-gd

Примечание: Устанавливатся будет последняя версия PHP - 7.0.

Кроме этого можно поставить и другие модули для PHP. Найти интересующие модули можно через следующую команду:

apt-cache search php- | less

И установить через sudo apt install

Еще можно отредактировать файл настроек PHP, который находится по этому пути /etc/php/7.0/apache2/php.ini (может менятся в зависимости от версии PHP).

Например, можно включить отображение ошибок, изменив значение параметра display_errors c display_errors = Off на display_errors = On. Отключать можно таким же образом.

Подробнее о настройке php.ini можно прочитать на официальном сайте.

Все, на этом установка и настройка закончена. Осталось только перезапустить веб-сервер:

sudo service apache2 restart

Другие интересующие вас вопросы можете задавать в комментарии.

Linux Сеть 87