Как настроить стек LAMP в Amazon Linux

22 feb 2024 3 min di lettura
Как настроить стек LAMP в Amazon Linux
Indice dei contenuti

Введение

В мире веб-разработки настройка стека LAMP — важнейший навык, которым должен обладать каждый разработчик. Стек LAMP, который означает Linux, Apache, MySQL и PHP, обеспечивает мощную и универсальную платформу для разработки и размещения веб-приложений. Это руководство проведет вас через процесс установки стека LAMP в Amazon Linux 2, популярного выбора среди многих разработчиков благодаря его стабильности и интеграции с сервисами AWS.

Предварительные условия

Прежде чем начать, убедитесь, что у вас есть:

  • Аккаунт AWS
  • Работающий экземпляр Amazon Linux 2
  • SSH-доступ к вашему экземпляру

Шаг 1. Обновите свою систему

Сначала подключитесь к своему экземпляру Amazon Linux 2 через SSH. После входа в систему рекомендуется обновить вашу систему до последних пакетов. Выполните следующую команду:

sudo yum update -y

Шаг 2. Установите Apache

Apache — это широко используемое программное обеспечение веб-сервера, которое будет обслуживать ваше веб-приложение для пользователей. Чтобы установить Apache, запустите:

sudo yum install httpd -y

После завершения установки мы рекомендуем запустить службу Apache и включить ее запуск при запуске:

sudo systemctl start httpd
sudo systemctl enable httpd

Вы можете убедиться, что Apache работает, открыв общедоступный DNS или IP-адрес вашего экземпляра в веб-браузере. Вы должны увидеть тестовую страницу Apache.

Шаг 3. Установите MySQL (MariaDB)

Amazon Linux 2 использует MariaDB, разработанную сообществом версию MySQL, в качестве системы управления базами данных по умолчанию. Чтобы установить MariaDB, используйте следующую команду:

sudo yum install mariadb-server -y

Как и в случае с Apache, запустите и включите службу MariaDB:

sudo systemctl start mariadb
sudo systemctl enable mariadb

На всякий случай запустите скрипт mysql_secure_installation:

sudo mysql_secure_installation

Следуйте инструкциям на экране, чтобы настроить установку MariaDB, включая установку пароля root и удаление анонимных пользователей.

Шаг 4. Установите PHP

PHP — это серверный язык сценариев, используемый для веб-разработки. Чтобы установить PHP вместе с некоторыми распространенными расширениями, запустите:

sudo yum install php php-mysqlnd php-pdo php-gd php-mbstring -y

После установки PHP вам необходимо перезапустить Apache, чтобы изменения вступили в силу:

sudo systemctl restart httpd

Чтобы протестировать установку PHP, создайте тестовый файл PHP в корневом каталоге вашего веб-сайта:

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/phpinfo.php

Перейдите по адресу http://<ваш-public-dns-or-ip>/phpinfo.php в веб-браузере. Вы должны увидеть страницу с информацией о PHP.

Шаг 5. Защитите свой стек

Безопасность имеет первостепенное значение. Убедитесь, что ваша группа безопасности AWS разрешает трафик только через необходимые порты (80 для HTTP, 443 для HTTPS и, дополнительно, 22 для SSH). Подумайте о настройке брандмауэра с помощью firewalld или iptables и всегда обновляйте свое программное обеспечение.

Шаг 6. Создайте виртуальный хост (необязательно)

Виртуальный хост позволяет обслуживать несколько веб-сайтов с одного сервера Apache. Мы создадим виртуальный хост для примера веб-сайта с именем example.com.

Создайте каталог для вашего сайта

Сначала создайте каталог для хранения файлов вашего сайта. Замените example.com своим фактическим доменным именем.

sudo mkdir -p /var/www/example.com/public_html

Установить разрешения

Затем измените разрешения, чтобы файлы вашего веб-сайта были доступны веб-серверу Apache.

sudo chown -R apache:apache /var/www/example.com/public_html
sudo chmod -R 755 /var/www

Создать образец страницы

Создайте простой HTML-файл для проверки конфигурации виртуального хоста.

echo "<h1>Welcome to example.com!</h1>" | sudo tee /var/www/example.com/public_html/index.html

Создайте файл виртуального хоста Apache.

Чтобы Apache мог обслуживать этот контент, вам необходимо создать файл виртуального хоста example.com.

sudo vi /etc/httpd/conf.d/example.com.conf

Добавьте следующую конфигурацию, адаптировав ее к вашему доменному имени и путям:

<VirtualHost *:80>
 ServerName example.com
 ServerAlias www.example.com
 DocumentRoot /var/www/example.com/public_html
 ErrorLog /var/log/httpd/example.com-error.log
 CustomLog /var/log/httpd/example.com-access.log combined
 </VirtualHost>

Перезапустите Apache

Примените изменения, перезапустив Apache.

sudo systemctl restart httpd

Ваш виртуальный хост теперь настроен. При переходе на http://example.com должен отобразиться созданный нами пример страницы.

Шаг 7. Защитите себя с помощью Let’s Encrypt

Защита вашего сайта с помощью HTTPS необходима для безопасности и SEO. Let's Encrypt предоставляет бесплатные SSL-сертификаты. Вот как настроить его для вашего нового виртуального хоста.

Установить сертификатбот

Certbot — это инструмент, который автоматизирует процесс получения и обновления SSL-сертификатов Let's Encrypt.

sudo yum install certbot python3-certbot-apache -y

Запустить Certbot

Запустите Certbot, чтобы автоматически получить сертификат SSL и настроить виртуальный хост для его использования.

sudo certbot --apache -d example.com -d www.example.com

Следуйте инструкциям на экране. Certbot изменит конфигурацию Apache для использования сертификата SSL и автоматически перезагрузит сервер.

Настройка автоматического продления

Сертификаты Let's Encrypt действительны в течение 90 дней. Certbot может продлить их автоматически. Попробуйте автоматическое продление с помощью:

sudo certbot renew --dry-run

Если эта команда выполняется без ошибок, автообновление настроено правильно.

Заключение

Вы успешно установили стек LAMP в Amazon Linux 2. Эта настройка обеспечивает прочную основу для размещения веб-приложений. Отсюда вы можете развернуть свои приложения, изучить более сложные конфигурации и начать разработку с использованием одного из самых популярных стеков веб-разработки.

Помните, что управление веб-сервером и веб-сайтами — это непрерывный процесс. Регулярно обновляйте программное обеспечение, следите за производительностью сервера и обеспечивайте безопасность своих приложений. С помощью этих шагов вы уже на пути к успешному управлению надежным и безопасным присутствием в Интернете.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.