From e5abc1fe99340b979b18864d978179f71fe8f5c5 Mon Sep 17 00:00:00 2001 From: vlapa Date: Sat, 13 Jun 2026 20:33:26 +0300 Subject: First --- LINUX/WORDPRESS.md | 471 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 471 insertions(+) create mode 100644 LINUX/WORDPRESS.md (limited to 'LINUX/WORDPRESS.md') diff --git a/LINUX/WORDPRESS.md b/LINUX/WORDPRESS.md new file mode 100644 index 0000000..68cfc81 --- /dev/null +++ b/LINUX/WORDPRESS.md @@ -0,0 +1,471 @@ +## Установка WordPress: техническая часть + +### Проверим пользователя + +Убедимся, что мы находимся в нужной папке (директории) и не под пользователем root: + +``` +serveruser@ИМЯСЕРВЕРА:/root$ +``` + +Если у Вас как на примере выше (вместо serveruser может быть другой пользователь, главное, чтобы не root), то все хорошо. А если у Вас так: + +``` +root@ИМЯСЕРВЕРА:~# +``` + +То выполите инструкции по созданию нового пользователя из этой статьи: [Установка Nginx, MySQL 8, PHP8.1-FPM на Ubuntu 22.04 LTS с нуля](https://dnevnik.dev/2022/07/11/ustanovka-nginx-mysql-8-php8-1-fpm-na-ubuntu-22-04-lts-s-nulya/). + +### Скачаем WordPress + +Перейдем в нужный каталог, введем: + +``` +cd /var/www/ +``` + +Затем, нужно создать каталог для нашего будущего сайта (у меня НАЗВАНИЕ_САЙТА это dnevnik): + +``` +sudo mkdir НАЗВАНИЕ_САЙТА +sudo chown -R www-data:www-data НАЗВАНИЕ_САЙТА +sudo find /var/www/НАЗВАНИЕ_САЙТА/ -type d -exec chmod 750 {} \; +sudo find /var/www/НАЗВАНИЕ_САЙТА/ -type f -exec chmod 640 {} \; +``` + +Если нужно проверить, свободно ли выбранное Вами название сайта, то сделать это можно здесь: [https://reg.ru](https://www.reg.ru/domain/new/?rlink=reflink-10793423). + +Переместимся в созданный каталог, и скачаем WordPress: + +``` +cd НАЗВАНИЕ_САЙТА +sudo -u www-data wget https://wordpress.org/latest.tar.gz +``` + +Распакуем архив: + +``` +sudo -u www-data tar -xzvf latest.tar.gz +``` + +И удалим его: + +``` +sudo -u www-data rm latest.tar.gz +``` + +Затем переместим содержимое папки wordpress в родительскую для ее директорию: + +``` +sudo -u www-data mv wordpress/* . +``` + +И удалим папку wordpress: + +``` +sudo -u www-data rm -R wordpress +``` + +### Создадим базу данных в MySQL + +Войдем в командную строку MySQL: + +``` +sudo mysql +``` + +Создадим новую базу данных: + +``` +CREATE DATABASE НАЗВАНИЕ_САЙТА; +``` + +Создадим нового пользователя: + +``` +CREATE USER 'НАЗВАНИЕ_САЙТА'@'localhost' IDENTIFIED BY 'aef@234R345t2iJhfvar'; +``` + +«aef@234R345t2iJhfvar» — это пароль пользователя НАЗВАНИЕ_САЙТА. + +Дадим пользователю НАЗВАНИЕ_САЙТА права на базу данных НАЗВАНИЕ_САЙТА: + +``` +GRANT ALL ON НАЗВАНИЕ_САЙТА.* TO 'НАЗВАНИЕ_САЙТА'@'localhost'; +``` + +Выйдем из командной строки MySQL: + +``` +exit +``` + +Теперь давайте войдем в командную строку MySQL под новым MySQL-пользователем: + +``` +mysql -u НАЗВАНИЕ_САЙТА -p +``` + +Вас попросят ввести пароль, введите его. Если Вы не меняли его в примере выше, то он будет такой: + +``` +aef@234R345t2iJhfvar +``` + +Вот мы и вошли под новым пользователем. Посмотрим, какие базы данных ему видны, введем: + +``` +SHOW DATABASES; +``` + +Результат будет такой: + +``` ++---------------------------+ +| Database | ++---------------------------+ +| information_schema | +| НАЗВАНИЕ_САЙТА | ++---------------------------+ +2 rows in set (0.06 sec) +``` + +Видим нашу базу НАЗВАНИЕ_САЙТА, отлично, выйдем из командной строки MySQL: + +``` +exit +``` + +Давайте двигаться дальше, настроим Nginx. + +### Настроим Nginx + +Тут нужно сказать, что я буду иметь в виду под «НАЗВАНИЕ_САЙТА», «НАЗВАНИЕ_САЙТА.ДОМЕН» и «www.НАЗВАНИЕ_САЙТА.ДОМЕН». + +На примере моего сайта это будет так: + +НАЗВАНИЕ_САЙТА = dnevnik +НАЗВАНИЕ_САЙТА.ДОМЕН = dnevnik.dev +www.НАЗВАНИЕ_САЙТА.ДОМЕН = www.dnevnik.dev + +Если Вам нужен домен, советую приобретать его здесь: [https://reg.ru](https://www.reg.ru/domain/new/?rlink=reflink-10793423). К примеру, домен этого сайта (dnevnik.dev) зарегистрирован именно там. + +Создадим новый конфигурационный файл для Nginx, для этого введем: + +``` +sudo vim /etc/nginx/sites-available/НАЗВАНИЕ_САЙТА +``` + +Команда выше создаст новый пустой файл. Вставим в него содержимое: + +``` +server { + listen 80; + server_name НАЗВАНИЕ_САЙТА.ДОМЕН www.НАЗВАНИЕ_САЙТА.ДОМЕН; + root /var/www/НАЗВАНИЕ_САЙТА; + + index index.html index.htm index.php; + + location / { + try_files $uri $uri/ /index.php$is_args$args; + } + + location ~ \.php$ { + include snippets/fastcgi-php.conf; + fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; + } + + location ~ /\.ht { + deny all; + } +} +``` + +И для сохранения файла, нажмите «:wq», а затем Enter. Файл сохранен. + +Активируем конфигурацию этой командой: + +``` +sudo ln -s /etc/nginx/sites-available/НАЗВАНИЕ_САЙТА /etc/nginx/sites-enabled/ +``` + +Перезапустим Nginx, чтобы изменения вступили в силу: + +``` +sudo systemctl reload nginx +``` +======================================== +Сначала вы проверяете, что порт 80 уже работает, + +``` +sudo netstat -plunt | grep 80 + +tcp6 0 0 :::80 :::* LISTEN 1573456/apache2 +``` + +Если он запущен, то отключите apache: + +``` +sudo service apache2 stop +``` + +Теперь запустите Nginx: + +``` +sudo service nginx start +``` +======================================== + +Теперь нужно настроить WordPress. + +### Настроим WordPress + +Переместимся в директорию сайта: + +``` +cd /var/www/НАЗВАНИЕ_САЙТА +``` + +Переименуем файл wp-config-sample.php: + +``` +sudo -u www-data mv wp-config-sample.php wp-config.php +``` + +И откроем его для редактирования: + +``` +sudo -u www-data vim wp-config.php +``` + +Увидим что-то вроде этого: + +``` +