PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

ROSA Enterprise Linux Server -- вопросы и проблемы
Правила форума
Уважаемые пользователи! Поддержка, ответы на вопросы и проблемы по серверу принимаются:
1) на багзилле http://bugs.rosalinux.ru/enter_bug.cgi? ... A%20Server
2) или после заполнения формы на http://www.rosalab.ru/products/server/download вы получаете 30 дней БЕСПЛАТНОЙ техподдержки по серверу.
Ответы на ваши вопросы на форуме НЕ ГАРАНТИРУЮТСЯ. Спасибо за понимание!
Ответить
ondevops
Сообщения: 2
Зарегистрирован: 21 фев 2024, 22:56
Operating system: ROSA Chrome Server 2021.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение ondevops » 21 фев 2024, 23:04

Всем добра, у меня есть необходимость поставить PHP 8.2 или выше с поддержкой MSSQL (sqlsrv ext) искал по всему рунету так и не нашел данных пакетов в репозитории (стоковом) находится только 7.4. Подскажите какой репозиторий можно использовать ? не уж то компилировать весь PHP и его зависимости ?

yclinggulp
Сообщения: 1
Зарегистрирован: 11 мар 2024, 15:28
Operating system: Window

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение yclinggulp » 11 мар 2024, 15:35

Для PHP 8.2+ с поддержкой MSSQL рассмотрите возможность добавления репозитория ondrej/php. Инструкции можно найти по этой ссылке: [ссылка]. Альтернативно можно скомпилировать PHP и его зависимости, но это немного сложнее. Документация PHP может помочь вам в этом процессе. Надеюсь это поможет!
Я помощник по личному уходу!!!snake game

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 12 сен 2024, 12:24

Доброго времени суток!
Есть необходимость установить на Роса-сервер (ROSA Chrome Server 12.5.1)
PHP8.1 или выше с поддержкой Postgresql
Подскажите плиз, как можно это реализовать.
В предыдущем посте есть рекомендация по подключению дополнительного репозитория, но
ссылка на инструкцию не работает - если не сложно, напишите здесь, как это сделать?
И так, для общего развития, может кто знает, почему на серверной платформе и в официальной репе только php7.4,
ходя для решения многих вопросов уже давно используется 8.х - есть на то
какие-то серьезные причины?

irton
Сообщения: 839
Зарегистрирован: 30 окт 2021, 04:17
Operating system: Rosa Fresh Xfce

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение irton » 12 сен 2024, 13:08

php непопулярен и умирать. В платформах нет пакетов которым бы требовался php8, поэтому и его нет.

вот ссылка на его пакеты https://mirror.yandex.ru/mirrors/launchpad/ondrej/php/

ps. вроде как все уже в docker ставят php8 + нужный софт и радуются

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 12 сен 2024, 15:04

Спасибо!
А как прикрутить ссылку на пакеты к системе?
Ну или как достать пакет со всеми зависимостями для оффлайн установки?
Если не сложно - опишите процесс пож - пока плаваю в этом вопросе...

irton
Сообщения: 839
Зарегистрирован: 30 окт 2021, 04:17
Operating system: Rosa Fresh Xfce

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение irton » 12 сен 2024, 15:22

У него там deb пакеты, я незнаю.

va9(2)
Сообщения: 860
Зарегистрирован: 20 окт 2015, 08:06
Operating system: RF.KDE5.2023.1.x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение va9(2) » 12 сен 2024, 16:13

vic1958 писал(а):
12 сен 2024, 15:04
Если не сложно - опишите процесс
Установить докер,
В докер установить убунту,
В убунте установить пхп.
http://wiki.rosalab.ru/ru/index.php/Эксплуатация_Docker
Раздел установки пропустить остальное должно работать в росе:
https://web.archive.org/web/20240806055 ... u-20-04-ru
https://google.com | https://ya.ru

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 12 сен 2024, 17:58

С php на убунту проблем совсем нет и без докера - apt install и поехали
У меня жесткие условия - чистая ОС РОСА
На ней php8.1 или выше...
Пробовал локально с rpm пакета - утонул в куче зависимостей - может есть способ скачать пакет вместе со всеми зависимостями?
Но предполагаю, что это тоже дорога в никуда...
Есть инструкция по подключению репозиториев EPEL и REMI
Добавление EPEL-репозитория
dnf install https://dl.fedoraproject.org/pub/epel/e ... noarch.rpm
Проверка
rpm -qi epel-release
Говорит, что все Ок, далее:
Добавление REMI репозитория, где находятся PHP пакеты
dnf -y install http://rpms.remirepo.net/enterprise/remi-release-9.rpm -y
А здесь начинаются ошибки по загрузке метаданных:
Error: Failed to download metadata for repo 'epel': Cannot prepare internal mirrorlist: Status code: 404

И вот тут я окончательно увяз...
Линк http://rpms.remirepo.net/enterprise/remi-release-9.rpm существует и пакет можно скачать...

Аватара пользователя
Barmalei
Сообщения: 5494
Зарегистрирован: 29 дек 2014, 15:45
Operating system: Rosa Fresh R12 Plasma 2021.1 x64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение Barmalei » 12 сен 2024, 20:03

Костыли все это, Docker, Wine, Virtualbox. Уж тогда ставить на комп ту ОС что требуется.

irton
Сообщения: 839
Зарегистрирован: 30 окт 2021, 04:17
Operating system: Rosa Fresh Xfce

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение irton » 13 сен 2024, 04:18

vic1958 писал(а):
12 сен 2024, 17:58
У меня жесткие условия - чистая ОС РОСА
Ну тогда вам в техподдержку надо обращаться, у вас Хром. Пусть они разруливают. :Yahoo!:

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 13 сен 2024, 08:55

vic1958, УСТАНОВКА PHP 8.3
КОМПИЛИРУЕТСЯ ЛЕГКО (ДЕЛАЛ СРАЗУ ЖЕ ПОСЛЕ УСТАНОВКИ ROSA 12.5.1)
Обновляем ОС

Код: Выделить всё

sudo dnf update
Нужно установить из репозитория ROSA

Код: Выделить всё

sudo dnf install apache-mod_php apache-base bison re2c autoconf gcc-c++ lib64pq++-devel lib64xslt-devel lib64xml2-devel lib64sqlite3-devel
Запуск сервера происходит следующей командой

Код: Выделить всё

sudo systemctl start httpd
Чтобы сервер стартовал при загрузке компьютера

Код: Выделить всё

sudo systemctl enable httpd
После каких-либо изменений в конфигурационных файлах, обычно сервер перезапускают
Перезапуск сервера

Код: Выделить всё

sudo systemctl restart httpd
Потом перейти по ссылке https://github.com/php/php-src/tags
И скачать php-8.3.12RC1 (zip)
Распаковать архив и перейти в папку php-src-php-8.3.12RC1
Там нужно открыть терминал и выполнить

Код: Выделить всё

./buildconf --force
Затем

Код: Выделить всё

./configure
Затем Затем

Код: Выделить всё

sudo make install
Проверить версию установленной PHP

Код: Выделить всё

php --version
Теперь проверим работу PHP, для этого в папке /usr/local/bin создадим файл info.php с одной строчкой

Код: Выделить всё

<?php phpinfo(); ?>
Откроем в этой папке терминал и выполним

Код: Выделить всё

./php info.php
Можно почитать про компиляцию и установку https://bonguides.com/how-to-compile-an ... -centos-8/
и https://ru.linux-console.net/?p=21973
Вложения
Снимок экрана от 2024-09-13 01-08-53.png
Снимок экрана от 2024-09-13 09-32-58.png
Последний раз редактировалось turik02 17 сен 2024, 15:53, всего редактировалось 1 раз.

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 13 сен 2024, 20:45

turik02, Все получилось, спасибо!
Теперь осталось откомпилить с модулями:-)

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 14 сен 2024, 12:39

vic1958, МОДУЛИ (если не ошибаюсь)
При компиляции вместо ./configure надо

Код: Выделить всё

/configure \

Код: Выделить всё

 --enable-cli \
 --enable-fpm \
 --enable-intl \
 --enable-opcache \./configure \
 --enable-cli \
 --enable-fpm \
 --enable-intl \
 --enable-opcache \
 --enable-sockets \
 --enable-soap \
 --with-freetype \
 --with-fpm-user=www-data \
 --with-fpm-group=www-data \
 --with-jpeg \
 --with-mysql-sock \
 --with-mysqli \
 --with-pdo-mysql \
 --with-pgsql \
 --with-xsl \
 --with-zlib
Посмотреть установленные модули СПИСОК ВСЕХ МОДУЛЕЙ https://www.php.net/manual/en/funcref.php

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 16 сен 2024, 02:14

ROSA 12.5.1
Скрипт установки и настройки PHP-8.3.11 / обновления и добавления функций.
При обновлении версии нужно поменять версию PHP в скрипте.
Внутри скрипта можете ознакомится / добавить при необходимости зависимости и функции, а так же настройки PHP.
Устанавлмвает в /usr/local/php, а не разбрасывает по всему /usr. Создаёт службу php-fpm, проверить по окончании настройки:
sudo systemctl status php-fpm
Версию PHP
php -v
Модули
php -m
Определить, какой PHP используется
which php
Тестирование конфигурации для запуска FPM
sudo /usr/local/php/sbin/php-fpm -t
Вложения
PHP-8.3.11.zip
(2.7 КБ) 52 скачивания
1.png
2.png
3.png
4.png

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 30 сен 2024, 15:33

turik02, Большое спасибо за развернутый ответ!
Был в отпуске, только сегодня вышел.

При компиляции с модулями столкнулся с такой ошибкой:

checking for libxml-2.0 >= 2.9.0... no
configure: error: Package requirements (libxml-2.0 >= 2.9.0) were not met:
Package 'libxml-2.0', required by 'virtual:world', not found

Пробую установить из репы
dnf install libxml2-devel

Говорит, что установлена
Пакет libxml2-devel-2.9.14-6.i686 уже установлен.
Зависимости разрешены.
Отсутствуют действия для выполнения.

Чего не хватает?

irton
Сообщения: 839
Зарегистрирован: 30 окт 2021, 04:17
Operating system: Rosa Fresh Xfce

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение irton » 30 сен 2024, 16:54

libxml2-devel-2.9.14-6.i686 это для i686 же. удалите его. и лучше репозитарии i686 отключить на время

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 30 сен 2024, 20:48

vic1958,
irton писал(а):
30 сен 2024, 16:54
libxml2-devel-2.9.14-6.i686 это для i686 же. удалите его. и лучше репозитарии i686 отключить на время
Вероятно, возникнет конфликт при установке пакета lib64xml2-devel.
Отключение репозиториев может не помочь. А при удалении удаляется много зависимостей (может они нужны).
Но можно просто избавиться от ненужных пакетов, не затрагивая зависимости.
Удаляем

Код: Выделить всё

sudo rpm -e --nodeps libicu-devel
И

Код: Выделить всё

sudo rpm -e --nodeps libxml2-devel
Потом устанавливаем

Код: Выделить всё

sudo dnf install lib64xml2-devel
Вложения
Снимок экрана от 2024-09-30 20-09-30.png
Снимок экрана от 2024-09-30 20-19-42.png

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 01 окт 2024, 00:53

vic1958,
Обычно для системы x86_64 в ОС ROSA требуется указать lib64, а для 32-разрядной — lib.
Некоторые названия зависимостей для системы x86_64 указаны в скрипте (если это необходимо, то можно открыть его в текстовом редакторе и ознакомиться).

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 01 окт 2024, 13:07

turik02,
Рекомендации помогли, спасибо!
После установки lib64xml2-devel потребовал libcurl >= 7.29.0
Установил из репы
Теперь ругается на отсутствие файла заголовков
configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path

Postgresql14 у меня установлен, но в системе нет такого файла, проверил вот так:
find / -name "libpq-fe.h"
find / -name "lib*.h"
Как это можно обойти?

irton
Сообщения: 839
Зарегистрирован: 30 окт 2021, 04:17
Operating system: Rosa Fresh Xfce

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение irton » 01 окт 2024, 13:16

Ну дык dnf install postgresql14-devel

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 01 окт 2024, 13:21

irton,
Я устанавливал так

dnf install postgresql14-server
dnf install postgresql14-contrib
systemctl enable postgresql14
systemctl start postgresql14
systemctl status postgresql14

Он в состоянии active

Это было сделано до запуска configure

irton
Сообщения: 839
Зарегистрирован: 30 окт 2021, 04:17
Operating system: Rosa Fresh Xfce

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение irton » 01 окт 2024, 13:32

Ну так вам не сервер нужен, а devel пакет постгреса, в котором файлы нужные чтобы другие проги с ним компилировались.

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 01 окт 2024, 14:10

vic1958, Нужно

Код: Выделить всё

sudo dnf install lib64pq++-devel

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 01 окт 2024, 14:29

vic1958, Обрати внимание на эти зависимости::

Код: Выделить всё

lib64openssl-devel lib64curl-devel lib64png-devel lib64webp-devel lib64jpeg-devel lib64freetype6-devel gcc make nginx lib64zip-devel apache-base bison re2c autoconf gcc-c++ lib64pq++-devel lib64xslt-devel lib64xml2-devel lib64sqlite3-devel php-pgsql php-pdo postgresql16-server lib64onig5 lib64onig-devel  php-mysql apache-mod_php apache-devel php php-cli
Если при запуске программы вы видите ошибку наподобие «configure: error: cannot find libpq-fe.h», попробуйте поискать что-то похожее, например, «lib64pq++-devel».

Ты же, кажется, уже один раз компилировали PHP? В таком случае, эти зависимости уже должны быть установлены в системе.

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 01 окт 2024, 15:47

irton, turik02,
Спасибо за конструктивную информацию!
Ошибка с файлом заголовков ушла.
Configure отработал, но с варнингом, что не понял некоторые опции.
Проверил валидность опций через configure --help
В результате получилась следующая строка:
./configure --with-pdo-pgsql --with-pgsql --enable-fpm --enable-gd --with-curl --with-pear
Теперь ему не хватает библиотеки libpng
Даю:
dnf list |grep libpng
Получаю:
libpng-devel.i686 2:1.6.37-3 mirror-rosa-i686-main
libpng-source.i686 2:1.6.37-3 mirror-rosa-i686-main
libpng-source.x86_64 2:1.6.37-3 mirror-rosa-x86_64-main
libpng0.i686 2:1.2.59-2 mirror-rosa-i686-contrib
libpng15.i686 2:1.5.17-7 mirror-rosa-i686-contrib
libpng16.i686 2:1.6.37-3 mirror-rosa-i686-main
libpng3.i686 2:1.2.59-2 mirror-rosa-i686-contrib
libpnglite-devel.i586 0.1.17-5 mirror-rosa-i686-contrib
libpnglite-devel.i686 0.1.17-5 mirror-rosa-i686-contrib
libpnglite0.i586 0.1.17-5 mirror-rosa-i686-contrib
libpnglite0.i686 0.1.17-5 mirror-rosa-i686-contrib

На мой неискушенный взгляд, того, что мне надо здесь нет, подскажите пожалуйста, как быть?

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 01 окт 2024, 15:54

vic1958,

Код: Выделить всё

sudo dnf install lib64png-devel
Интересно, какая у тебя операционная система — 64-разрядная или 32-разрядная?

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 01 окт 2024, 16:11

turik02,
64

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 01 окт 2024, 16:47

vic1958,
Используй лучше скрипт. Он установит все зависимости, там есть твои настройки для configure.
Он установит PHP в папку /opt/php, а не разбросит PHP по всему /usr и настроит кое-что (смотри содержимое скрипта).

Подправил скрипт 03.10.202 (поддержка Postgresql).
07.10 (Теперь при включении компьютера создаётся каталог /run/php-fpm)
Вложения
PHP-8.3.11.zip
(2.73 КБ) 26 скачиваний
Последний раз редактировалось turik02 07 окт 2024, 17:49, всего редактировалось 1 раз.

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 03 окт 2024, 15:38

turik02,
Доброго дня!
Благодаря рекомендации
sudo dnf install lib64pq++-devel
и командам из скрипта (закомментил то, что уже сделано и подкорректировал под nginx )
пакет откомпилировался
Команда
php -v - показывает версию php
php -m - подгруженные модули.
Настроил php-fpm - запускается, тест проходит.

Большое спасибо!

Теперь проблема в том, что при обращении к веб-серверу к странице index.html все отображается корректно.
А при обращении к index.php пишет файл не найден.
При этом в лог nginx пишет следующее:
[error] 53939#0: *1 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 10.0.0.76, server: localhost, request: "GET /index.php HTTP/1.1", upstream: "fastcgi://unix:/run/php-fpm/www.sock:", host: "10.0.0.76"

В конфиге php-fpm прописано
listen = /run/php-fpm/www.sock
Файл при старте создается
В конфиге nginx в секции
location ~ '\.php$|^/update.php'
прописал
fastcgi_pass unix:/run/php-fpm/www.sock;

По ошибке nginx гуглил пол дня, куча рекомендаций, но в моем случае не помогли.

Честно говоря, нет четкого понимания о чем говорит эта ошибка nginx

Подскажите пожалуйста, если есть соображения
Последний раз редактировалось vic1958 04 окт 2024, 13:31, всего редактировалось 2 раза.

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 03 окт 2024, 19:51

vic1958 писал(а):
03 окт 2024, 15:38
А при обращении к index.php пишет файл не найден.
vic1958, А он точно есть?

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 04 окт 2024, 13:30

turik02,
Все, вопрос снимается, решение нашел -
nginx.conf
Секция
location ~ '\.php$|^/update.php' {...}
В строке
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
вместо /scripts указал абсолютный путь к root'у сайта:
fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name;

и все заработало!

Спасибо!

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 04 окт 2024, 14:45

vic1958,
vic1958 писал(а):
04 окт 2024, 13:30
решение нашел
Вот и всё, замечательно! Надеюсь, больше не возникнет никаких проблем.

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 04 окт 2024, 18:03

turik02,
В общем все работает, еще раз большое спасибо за помощь!
Есть интересная проблема, честно говоря, на первый взгляд мистическая:-)
Сервер на виртуалке, виртуалку мы арендуем.
Деньги берут и за время работы сервера, а поскольку он тестовый, есть расписание, по которому сервак в 21.00 вырубается и в 9.00 включается.
В конфиге php-fpm прописано, что socket-файл хранить в /run/php-fpm
Сам сервис папку не создает, ее создаю я mkdir /run/php-fpm
Сервис запускается, файл на месте.
Но утром каталога уже нет - его опять надо создавать руками и запускать сервис.
Чувствую, что в трех соснах брожу, но выхода пока не вижу:-)

nickm
Сообщения: 370
Зарегистрирован: 31 май 2016, 07:08
Operating system: ROSA Fresh 2023.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение nickm » 04 окт 2024, 22:04

vic1958 писал(а):
04 окт 2024, 18:03
Сам сервис папку не создает, ее создаю я mkdir /run/php-fpm
Сервис запускается, файл на месте.
Но утром каталога уже нет - его опять надо создавать руками и запускать сервис.
Указанная директория временная и создаётся в сеансе жизни системы;
vic1958 писал(а):
04 окт 2024, 18:03
Чувствую, что в трех соснах брожу, но выхода пока не вижу:-)
Почитайте.

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 04 окт 2024, 23:51

vic1958, Можно отключить автозагрузку службы, раз она не работает:

Код: Выделить всё

sudo systemctl disable php-fpm
Скачай архив, распакуй его. В нём два файла, они будут создавать папку и запускать службу.
Инструкция внутри файлов.
Перезагрузи комп и проверь есть ли папка /run/php-fpm и службу

Код: Выделить всё

sudo systemctl status php-fpm
Вложения
my-php-fpm.service.zip
(872 байт) 27 скачиваний
Последний раз редактировалось turik02 06 окт 2024, 03:45, всего редактировалось 3 раза.

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 05 окт 2024, 01:07

vic1958,
Или же можно изменить путь к сокету в файле конфигурации /opt/php/etc/php-fpm.d/www.conf (возможно, у тебя будет другой путь).
Найди строку 41, которая содержит:
listen = /run/php-fpm/www.sock
И замени её на другую, например:
listen = /opt/www.sock
После внесения изменений перезагрузи компьютер и проверь результат:

Код: Выделить всё

sudo systemctl status php-fpm
Вложения
Снимок экрана от 2024-10-05 00-42-04.png
Снимок экрана от 2024-10-05 00-42-04.png (14.71 КБ) 3731 просмотр

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 07 окт 2024, 11:00

turik02,
Доброго дня!
Спасибо за рекомендации!
Решил пойти по наиболее простому пути - откорректировал в кофиге путь к сокет-файлу
/run/www.socket
И все работает - после перезагрузки php-fpm стартует без проблем.
Просто так и остался нерешенным вопрос - почему каталог, который я создаю вручную
с помощью команды mkdir исчезает после перезагрузки...
В то время как с другими каталогами (например /run/openvpn, который не запущен и сокет-файла там нет)
ничего не происходит.
А вот мой /run/php-fpm как паршивая овца:-)

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 07 окт 2024, 13:07

vic1958,
vic1958 писал(а):
07 окт 2024, 11:00
Просто так и остался нерешенным вопрос - почему каталог, который я создаю вручную
с помощью команды mkdir исчезает после перезагрузки...
Дело в том, что каталог /run всегда существует, даже если компьютер отключен. Поэтому при включении компьютера он уже есть, и в нём создаётся файл /run/www.socket.
Если сделать каталог /run/php-fpm, то это не поможет, потому что всё в каталоге /run стирается при перезагрузке.
В данном случае служба php-fpm.service создаёт только сокет (www.socket), а каталог php-fpm нет. А так как нет каталога, то служба не может создать сокет.

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 07 окт 2024, 14:25

turik02,
turik02 писал(а):
07 окт 2024, 13:07
Если сделать каталог /run/php-fpm, то это не поможет, потому что всё в каталоге /run стирается при перезагрузке.
А как же тогда остальные каталоги в /run?
Почему они не затираются? Как, например, /run/openvpn? И еще куча других?

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 07 окт 2024, 15:47

vic1958,
При каждой загрузке компьютера система создаёт каталог openvpn и другие каталоги (я не знаю, какой именно процесс отвечает за это). Когда компьютер выключен, каталог /run пуст. Это можно проверить, загрузившись в LIVE-режиме и зайдя на свой диск.
Служба php-fpm.service создаёт только сокет. А в коде записан каталог /run/php-fpm.
Например, если хочешь, чтобы служба php-fpm.service создавала каталог для сокета, нужно добавить соответствующую строку в файл в разделе service
[Service]
PIDFile=/run/php-fpm/%i.pid (или будет www.socket или www.pid)

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 07 окт 2024, 16:48

turik02,
Большое спасибо!
Теперь все понятно

turik02
Сообщения: 353
Зарегистрирован: 01 июн 2022, 13:47
Operating system: ROSA FRESH GNOME 12.5 x86_64

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение turik02 » 07 окт 2024, 17:27

vic1958, Я ошибся. Нужно добавить не строку PIDFile=..., а две строки
[Service]
RuntimeDirectory=php-fpm
RuntimeDirectoryMode=0755

vic1958
Сообщения: 16
Зарегистрирован: 12 сен 2024, 11:58
Operating system: ROSA Chrome Server 12.5.1

PHP 8.2 with MSSQL support on ROSA Chrome 2021.1

Сообщение vic1958 » 11 окт 2024, 13:07

turik02,
turik02 писал(а):
07 окт 2024, 17:27
Я ошибся. Нужно добавить не строку PIDFile=..., а две строки
[Service]
RuntimeDirectory=php-fpm
RuntimeDirectoryMode=0755
Спасибо!

Ответить

Вернуться в «Сервер»