LAMP, установите Apache, MariaDB и PHP на Ubuntu 20.04

об установке LAMP на Ubuntu 20.04

В следующей статье мы рассмотрим, как установить LAMP на Ubuntu 20.04 LTS. Это связанный набор программных инструментов. LAMP означает Linux, Apache, MariaDB / MySQL и PHP., все они имеют открытый исходный код и бесплатны для использования. Это наиболее распространенный программный стек, который поддерживает динамические веб-сайты и веб-приложения.

Linux - это операционная система, Apache - это веб-сервер, MariaDB / MySQL - это сервер базы данных, а PHP - это язык сценариев на стороне сервера, отвечающий за создание динамических веб-страниц. Для выполнения следующих строк потребуется операционная система Ubuntu 20.04, работающий на локальном компьютере или на удаленном сервере.

Установите LAMP в Ubuntu 20.04

Перед установкой стека LAMP рекомендуется обновить репозиторий и доступные программные пакеты. Мы сделаем это, выполнив в терминале (Ctrl + Alt + T):

sudo apt update; sudo apt upgrade

Установите веб-сервер Apache

Введите следующую команду в терминале (Ctrl + Alt + T), чтобы установить веб-сервер Apache:

Установка Apache в LAMP

sudo apt install -y apache2 apache2-utils

После установки Apache должен запуститься автоматически. В этом мы можем убедиться, написав:

статус apache2

systemctl status apache2

Мы также можем проверить версию Apache:

Версия Apache, установленная в LAMP

apache2 -v

Сейчас введите общедоступный IP-адрес сервера Ubuntu 20.04 в адресной строке браузера.. Вы должны увидеть стартовую веб-страницу, что означает, что веб-сервер Apache работает правильно. Если вы устанавливаете LAMP на локальном компьютере с Ubuntu 20.04, введите 127.0.0.1 или localhost в адресной строке. браузер.

apache2 работает в браузере

Если соединение отклонено или не завершено, у нас может быть брандмауэр, предотвращающий входящие запросы на 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) как владелец веб-корня. Мы добьемся этого, написав:

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

Установите сервер базы данных MariaDB

MariaDB - это прямая замена MySQL. Напишите следующую команду в устанавливать MariaDB в Ubuntu 20.04:

установка сервера maridb в LAMP

sudo apt install mariadb-server mariadb-client

После установки сервер MariaDB должен запуститься автоматически. Мы сможем проверь свой статус командой:

статус mariadb

systemctl status mariadb

Если он не запущен, мы начнем с написания:

sudo systemctl start mariadb

к разрешить MariaDB запускаться автоматически во время загрузки, мы должны выполнить:

sudo systemctl enable mariadb

Проверить Версия сервера MariaDB:

версия mariadb установлена ​​в LAMP

mariadb --version

Сейчас запустите сценарий безопасности после установки:

sudo mysql_secure_installation

Когда вы просите нас ввести пароль root MariaDB, Пульса Главная поскольку пароль root еще не установлен. Затем введите свой пароль root для сервера MariaDB.

безопасность mysql_password

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

Вопросы о безопасной конфигурации mysql в MariaDB

По умолчанию, пакет MaraiDB в Ubuntu использует unix_socket для аутентификации логина пользователя.

Установить PHP7.4

На момент написания PHP7.4 является последней стабильной версией PHP. Для этого мы собираемся написать следующую команду в установить PHP7.4 и некоторые распространенные модули PHP:

установить php 7.4 в LAMP

sudo apt install php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline

Теперь нам придется активируйте модуль Apache php7.4 и перезапустите веб-сервер Apache.

включить модуль php7.4

sudo a2enmod php7.4

sudo systemctl restart apache2

Мы можем проверить версию PHP командой:

версия php, установленная в LAMP

php --version

Чтобы протестировать сценарии PHP с сервером Apache, нам нужно создать файл info.php в корневом каталоге:

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

Внутри файла мы вставим следующий PHP-код:

<?php phpinfo(); ?>

Как только файл будет сохранен, теперь в адресной строке браузера нам нужно будет написать IP-адрес / info.php. Замените ip-адрес своим текущим IP. Если вы используете локальный компьютер, введите 127.0.0.1/info.php o localhos / info.php. Это должно отобразить информацию PHP.

локальный phpinfo.php

Запустите PHP-FPM с Apache

Мы собираемся найти два способа запуска кода PHP с веб-сервером Apache. С модулем PHP Apache и с PHP-FPM.

На описанных выше шагах для обработки кода PHP используется модуль Apache PHP7.4. В целом это нормально, но в некоторых случаях мы должны выполнять PHP-код с PHP-FPM. Сделать это, нам придется отключить модуль Apache PHP7.4:

отключить Apache php7.4 в LAMP

sudo a2dismod php7.4

Теперь мы будем установить PHP-FPM:

установка php7.4-fpm в LAMP

sudo apt install php7.4-fpm

Мы продолжаем включение модуля proxy_fcgi и setenvif:

включить proxy_fcgi setenvif

sudo a2enmod proxy_fcgi setenvif

Следующим шагом будет включить файл конфигурации /etc/apache2/conf-доступный/php7.4-fpm.conf:

команда enable a2enconf php7.4

sudo a2enconf php7.4-fpm

Тогда мы должны перезапустить apache:

sudo systemctl restart apache2

Теперь, если вы обновите страницу info.php в браузере вы обнаружите, что Серверный API изменен с Apache 2.0 Handler на FPM / FastCGI, что означает, что веб-сервер Apache будет передавать запросы от PHP к PHP-FPM.

FPM-FastCGI включить

Наконец, для безопасности сервера мы должны удалить файл info.php.


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Владимир Козиск сказал

    Большое спасибо за ваше руководство, мне это очень помогло, и все в порядке ... привет

  2.   Пабло сказал

    Четкое и краткое руководство

    спасибо

  3.   Йоредут сказал

    Очень хорошо и все, но в конце концов я отключил сервер Apache для интерпретации файла .php. Пустая трата времени

    1.    Дэмиен А. сказал

      Привет. Вы не перезапустите apache?

  4.   Джиг сказал

    «Идеальный» гид.
    Большое спасибо.

  5.   Исидро сказал

    шаги верны, но необходимо немного больше тестирования с пользователем root mysql. Файл info.php у меня не работал