502 Bad Gateway на новом сервере c Ubuntu.

Главные вкладки

Аватар пользователя VasyOK VasyOK 8 июня в 19:04

Всем привет.

При попытке захода на новый сайт, пишет (вместо инсталяции Друпала):
502 Bad Gateway
nginx/1.24.0 (Ubuntu)

Если зайти на sitename.com/robots.txt - файл показывает.

На сервере Ubuntu 24.
php ставил 8.2.
composer install ставит все что нужно.

Журнал nginx выдает

$ tail /var/log/nginx/error.log
... connect() to unix:/var/run/php/php8.1-fpm.sock failed (2: No such file or directory) while connecting to upstream, client: Ц.Ы.Ф.РЫ, server: www.sitename.com, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php8.1-fpm.sock:", host: "sitename.com"

Не понимаю при чем тут php8.1 ?

Комментарии

Аватар пользователя VasyOK VasyOK 8 июня в 23:50

А как правbльно установить PHP?
Так?
apt install php8.2-fpm php-mysql php-xml php-gd php-curl php-mbstring

или перед этим сделать (?):

add-apt-repository ppa:ondrej/php
apt-get update && apt-get install ca-certificates apt-transport-https software-properties-common

Делал apt-get purge php.*, чтоб снести криво поставленное.
теперь при установке PHP пишет

E: Unable to locate package php8.2
E: Couldn't find any package by glob 'php8.2'
Аватар пользователя VasyOK VasyOK 9 июня в 11:37

Хорошо, а как сделать бекап окружения перед тем как ставить или обновлять nginx, php, mysql ?
Так чтобы сайт не трогать если он есть, ведь файло сайта может терабайты весить...

Аватар пользователя VasyOK VasyOK 13 июня в 16:36

Мне тут советуют разбить накопитель отдельно ОС, отдельно сайты. И делать бекап накопителя с ОСью. Насколько это разумно?

Аватар пользователя OldWarrior OldWarrior 14 июня в 0:51

Определённо разумно. Я так и делаю обычно. Только на мой взгляд конфиги лучше держать отдельно от раздела с ОС и тоже бекапить.

Есть вариант ещё - сервера на виртуальной машине (или машинах), а файлы на сетевом/расшаренном Samba-диске - преимущество в том, что можно один и тот же сайт гонять поочередно в разном окружении (ОС, PHP, веб-сервер и т.д.). Однако, при этом будет заметное снижение производительности.

Аватар пользователя VasyOK VasyOK 14 июня в 0:57

Конфиги - это что? Samba диск мне врядли надо. У себя под D4D могу под разными версиями РНР поганять.
А как разбить диск на виртуальном сервере?

Аватар пользователя OldWarrior OldWarrior 14 июня в 2:07

VasyOK wrote: Конфиги - это что?

Имеются в виду конфиги apache, php, nginx, mysql (и его базы) и т.д. Все (или почти все) можно настроить на кастомное расположение файлов конфигурации.

Просто при восстановлении системного раздела с бекапа - всегда есть гарантия, что конфиги будут подключены самые актуальные (поскольку они лежат на другом разделе).

VasyOK wrote: А как разбить диск на виртуальном сервере?

Видимо, типичными для ОС командами для работы с разделами дисков. А вообще - что имеется в виду под "виртуальным сервером"?

Аватар пользователя VasyOK VasyOK 15 июня в 0:55

OldWarrior wrote:что имеется в виду под "виртуальным сервером"?

VPS (англ. virtual private server) или VDS (англ. virtual dedicated server), виртуальный выделенный сервер — вид сервера, root-доступ к которому его клиент получает посредством удалённого интернет соединения.

Хорошо, Пробую разбить диск на сервере.

Смотрю какие диски доступны (вроде 1):

fdisk -l
Disk /dev/vda: 250 GiB, 268435456000 bytes, 524288000 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x3b3f2586

Device     Boot Start       End   Sectors  Size Id Type
/dev/vda1        2048 524287999 524285952  250G 83 Linux

Захожу в диск на котором хочу создать раздел.

Пишет, что плохая идея.

fdisk /dev/vda
This disk is currently in use - repartitioning is probably a bad idea.
It's recommended to umount all file systems, and swapoff all swap
partitions on this disk.

Но я, настаиваю...

Ввожу n - add a new partition

Command (m for help): n
All space for primary partitions is in use.

Не дает. Sad Что делать?

Аватар пользователя Andruxa Andruxa 15 июня в 16:14

Ситуация следующая: твой виртуальный диск /dev/vda объемом 250Гб содержит один раздел /dev/vda1, который занимает весь объем диска, и создать дополнительный раздел нет возможности, поскольку для него нет свободного места.
В данной ситуации можно попробовать уменьшить размер раздела /dev/vda1, и на освободившемся на диске месте создать новый раздел /dev/vda2
Но поскольку раздел /dev/vda1 смонтирован в корень файловой системы - / то отмонтировать его так просто не получится.
Можно попробовать создать раздел в ОЗУ-рамдиске, скопировать туда минимальный набор файлов, требующихся для функционирования ОС, и сделать chroot в этот раздел, после чего отмонтировать /dev/vda1, но хватит ли объема памяти и умений для такой не самой простой манипуляции - не факт.
А уменьшать размер смонтированного в корень раздела "на живую" без отмонтирования - is probably a bad idea, тут я согласен с fdisk.

С другой стороны, с точки зрения физического сервера, на котором крутится твоя виртуалка, твой диск /dev/vda ни что иное, как файл - образ блочного устройства.
И если у тебя в виртуалке "посыпется диск", физически это будет означать повреждение файла с образом диска. Будет ли в этом образе один раздел или несколько - никакой роли не сыграет, т.е. такое разделение виртуального диска на несколько разделов никакой дополнительной отказоустойчивости не даст.

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

В общем, установи лучше какой-нибудь backup-manager, настрой его должным образом, и не морочь себе голову.

Аватар пользователя OldWarrior OldWarrior 15 июня в 16:20

Я вообще-то выше предполагал, что речь идёт о локальном сервере, для разработки. На VDS этот финт вряд ли прокатит, поскольку для создания разделов действительно нужно освобождать необходимое место и кроме того, возможно, загружаться с внешнего загрузочного диска. Доступа же к внешним носителям, на VDS, как правило у вас нет.

Вообще - по-моему политика большинства VDS-хостингов не предполагает разбиение выделяемого дискового пространства на несколько разделов. Обычно вам просто предоставляется преднастроенная виртуальная машина.

Аватар пользователя VasyOK VasyOK 17 июня в 2:13

502 Bad Gateway
проблема была такая же как тут.
https://drupal.ru/node/145733
Завяжу узелок на память.

backup-manager - даже не знаю.

А что если перед установкой/обновлением компонентов окружения бекапить в архив все кроме /var/www, а в случае надобности восстанавливать из архива?