LAMP

---=== Настройка локального хостинга LAMP UBUNTU 22.04 ===---

 

  • Подготавливаем виртуальную машину и устанавливаем UBUNTU

Пробрасываем 80 и 443 порт на роутере.

  • Как обычно по традиции обновляем пакеты

apt-get update

apt-get upgrade

  • Устанавливаем APACHE

apt-get install apache2

  • Подготавливаем директория для сайта, в нашем примере это будет сайт на wordpress

- создаем директорию в /var/www

mkdir /var/www/mysite

  • Назначаем владельца для папки “mysite” , для пользователя www-data

chown -R www-data:www-data mysite

Потом мы это еще повторим

  • Можем сейчас сразу отредактировать виртуальный хост в apache
  • Переходим в /etc/apache2/sites-available#
  • копируем 000-default.conf со своим названием сайта

cp -r 000-default.conf mysite.conf

 

  • переименовываем скопированный конфиг и изменяем под себя

 

        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/mysite

        ServerName mysite.ru

        ServerAlias www.mysite.ru

 

- включаем наш виртуальный хост

a2ensite mysite.conf

и перезапустим сервис

systemctl reload apache2

 

 

  • Установим PHP

apt-get install php

 

  • Ставим mysql-server mysql-client

https://losst.pro/ustanovka-mysql-ubuntu-16-04

 

apt-get install mysql-server

apt-get install mysql-client

 

Если вы не указали пароль root во время установки или установщик не запросил этот пароль, его нужно установить сейчас. Для этого выполните такую команду:

 

mysqladmin password -u root -p

скорее всего еще потребуется следующее

mysql

В окружении SQL выполните такую команду:

 

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'ваш_пароль';

 

Далее произведем настройку безопасности

mysql_secure_installation

 

На вопрос Validate password component can be used ……

Отвечаем n

Далее предложит изменить пароль для root, тут уже на усмотрение.

На все остальные вопросы нужно отвечать утвердительно: Y

  • Remove anonymous users- удалить аноноимных пользователей
  • Disallow root login remotely- отключить удалённые подключения для root пользователя, это касается только удалённых подключений, подключения с localhost удалёнными не считаются.
  • Remove test database and access to it- удалить тестовую базу данных.
  • Reload privilege tables now- перезагрузить таблицу привелегий.

 

 

 

  • Установим phpmyadmin

 

apt-get install phpmyadmin

в данном случае выбираем автоматическую конфигурацию для apache2

 

  • Создадим базу данных и пользователя баз данных через phpMyAdmin

Через web перейдем “ip/phpmyadmin’

 

New->называем базу данных->выбираем для wordpress utf8mb4_unicode_ci->privileges->

Создадим нового пользователя add user account-> выбираем Global privileges->GO

 

 

  • Загрузим wordpress

Wget https://ru.wordpress.org/latest-ru_RU.tar.gz

Распакуем

tar -xf latest-ru_RU.tar.gz

cкопируем все содержимое папки wordpress в нашу директорию для сайта

/var/www/mysite

cp -r wordpress/.     /var/www/mysite

еще раз выдадим рекурсивно права владельца на директорию и поддиректории

Chown -R www-data:www-data mysite

 

  • Далее установим certbot для ssl сертификатов

https://certbot.eff.org/instructions?ws=apache&os=ubuntufocal

 

- Установить Snapd

apt-get install snapd

 

To test your system, install the hello-world snap and make sure it runs correctly:

 

$ sudo snap install hello-world

hello-world 6.4 from Canonical✓ installed

$ hello-world

Hello World!

Проверили-отлично!

 

  • Установить Сертбот

Запустите эту команду в командной строке на компьютере, чтобы установить Certbot.

snap install --classic certbot

 

 

  • Подготовьте команду Certbot

Выполните следующую инструкцию в командной строке на компьютере, чтобы убедиться, что certbotкоманду можно выполнить.

ln -s /snap/bin/certbot /usr/bin/certbot

 

 

  • Выберите, как вы хотите запустить Certbot

Либо получите и установите сертификаты...

Запустите эту команду, чтобы получить сертификат, и Certbot автоматически отредактирует вашу конфигурацию Apache для его обслуживания, включив доступ HTTPS за один шаг.

 

                        certbot --apache

Или просто получите сертификат

Если вы более консервативны и хотите внести изменения в конфигурацию Apache вручную, запустите эту команду.

                                       certbot certonly --apache

 

Наш вариант  certbot --apache

На вопрос which names would you like to activate HTTPS for?

Нажимаем ENTER

 

В целом все.