Работаю с RaspberryPi Model 3B.
Ставил php и nginx по гайду от Grav: https://getgrav.org/blog/raspberrypi-nginx-php7-dev
Решил использовать гайд, т.к. по-старому(apt install nginx php-fpm) выдавало ошибку.
Как оказалось, проблема не во мне, проблема где-то внутри.
Ставлю командой
pi@raspi ~ sudo apt-get install -t buster php7.2 php7.2-curl php7.2-gd php7.2-fpm php7.2-cli php7.2-opcache php7.2-mbstring php7.2-xml php7.2-zip
Всё скачивается, распаковывается, но при настройке вибивает ошибку:
Лог
Creating config file /etc/php/7.2/fpm/php.ini with new version
Created symlink /etc/systemd/system/multi-user.target.wants/php7.2-fpm.service → /lib/systemd/system/php7.2-fpm.service.
Job for php7.2-fpm.service failed because the control process exited with error code.
See "systemctl status php7.2-fpm.service" and "journalctl -xe" for details.
invoke-rc.d: initscript php7.2-fpm, action "start" failed.
● php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2019-06-04 20:00:52 +07; 36ms ago
Docs: man:php-fpm7.2(8)
Process: 8667 ExecStart=/usr/sbin/php-fpm7.2 --nodaemonize --fpm-config /etc/php/7.2/fpm/php-fpm.conf (code=exited, status=127)
Main PID: 8667 (code=exited, status=127)
Jun 04 20:00:52 raspi systemd[1]: Starting The PHP 7.2 FastCGI Process Manager...
Jun 04 20:00:52 raspi php-fpm7.2[8667]: [122B blob data]
Jun 04 20:00:52 raspi systemd[1]: php7.2-fpm.service: Main process exited, code=exited, status=127/n/a
Jun 04 20:00:52 raspi systemd[1]: Failed to start The PHP 7.2 FastCGI Process Manager.
Jun 04 20:00:52 raspi systemd[1]: php7.2-fpm.service: Unit entered failed state.
Jun 04 20:00:52 raspi systemd[1]: php7.2-fpm.service: Failed with result 'exit-code'.
dpkg: error processing package php7.2-fpm (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of php7.2:
php7.2 depends on libapache2-mod-php7.2 | php7.2-fpm | php7.2-cgi; however:
Package libapache2-mod-php7.2 is not installed.
Package php7.2-fpm is not configured yet.
Package php7.2-cgi is not installed.
dpkg: error processing package php7.2 (--configure):
dependency problems - leaving unconfigured
Processing triggers for systemd (232-25+deb9u11) ...
Processing triggers for man-db (2.7.6.1-2) ...
Errors were encountered while processing:
php7.2-fpm
php7.2
E: Sub-process /usr/bin/dpkg returned an error code (1)
systemctl status php7.2-fpm.service
✘ pi@raspi ~ systemctl status php7.2-fpm.service
● php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2019-06-04 20:00:52 +07; 3min 24s ago
Docs: man:php-fpm7.2(8)
Main PID: 8667 (code=exited, status=127)
Jun 04 20:00:52 raspi systemd[1]: Starting The PHP 7.2 FastCGI Process Manager...
Jun 04 20:00:52 raspi php-fpm7.2[8667]: [122B blob data]
Jun 04 20:00:52 raspi systemd[1]: php7.2-fpm.service: Main process exited, code=exited, status=127/n/a
Jun 04 20:00:52 raspi systemd[1]: Failed to start The PHP 7.2 FastCGI Process Manager.
Jun 04 20:00:52 raspi systemd[1]: php7.2-fpm.service: Unit entered failed state.
Jun 04 20:00:52 raspi systemd[1]: php7.2-fpm.service: Failed with result 'exit-code'.
`journalctl -xe` выдаёт только sshd и kernel, ничего связанного с apt или php нет.
При выполнении php -v выдаёт это:
✘ pi@raspi ~ php -v
php: error while loading shared libraries: ☻7�: cannot open shared object file: No such file or directory
Очень удивляет эта последовательность символов, т.к. она безусловно важна, однако ничего из неё не понятно.
Установка nginx’а тоже ничего нее даёт:
✘ pi@raspi ~ sudo apt install nginx-full nginx
✘ pi@raspi ~ sudo apt install nginx-full nginx
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
nginx-full : Depends: libnginx-mod-http-auth-pam (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
Depends: libnginx-mod-http-dav-ext (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
Depends: libnginx-mod-http-echo (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
Depends: libnginx-mod-http-geoip (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
Depends: libnginx-mod-http-image-filter (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
Depends: libnginx-mod-http-subs-filter (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
Depends: libnginx-mod-http-upstream-fair (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
Depends: libnginx-mod-http-xslt-filter (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
Depends: libnginx-mod-mail (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
Depends: libnginx-mod-stream (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
Depends: nginx-common (= 1.10.3-1+deb9u2) but 1.14.2-2 is to be installed
E: Unable to correct problems, you have held broken packages.
Однако, становится понятно, что мы have held broken packages, только почему broken — не понятно.
Уже несколько часов (на самом деле уже почти 6) бьюсь с конфигурацией сервера и возможностью установить все это дело на связке nginx + php-fpm
Включил всевозможные логи, но не могу найти в чем косяк. Конфиг nginx стоит ваш, пробовал через сокет и через 127.0.0.1:9000 и через свой конфиг nginx. Папки все распаковываются и создаются отлично.
Таймауты везде поднял с 30 секунд, до 300. (Везде, значит реально везде)
Nginx:
recv() failed (104: Connection reset by peer) while reading response header from upstream, client: xx.xx.xx.xx, server: site.ru, request: «GET /install.php?step=2&lang=ru_RU×tamp=1418332577291 HTTP/1.1», upstream: «fastcgi://unix:/var/run/php-fpm/php-fpm.sock:», host: «site.ru», referrer: «http://site.ru/install.php»
PHP-FPM
Да, вижу что падает php-fpm, возможно это на шаге распаковки файлов (дебажил firebug’ом аякс запросы, видел 502 ошибку).
Включил логирование самого php-fpm:
WARNING: [pool www] child 27735 exited on signal 11 (SIGSEGV) after 1214.318571 seconds from start
Вроде бы тоже ничего подозрительного.
PHP.INI
Включил логирование ошибок в php.ini, думал туда упадет что-нибудь, но там пусто.
MySQL (mariaDB на самом деле)
Но база данных по прежнему не ставилась, включил логирование всех запросов к mysql:
- 64 Connect shop_db@localhost as anonymous on
- 64 Init DB my_shop
- 64 Query SELECT 1 FROM `wa_app_settings` WHERE 0
- 64 Query SHOW TABLES
- 64 Quit
И это все запросы к базе, которые сделал инсталлер!!! Иногда его прорывает и он ставит 4 пустых таблицы и все.
Последний шаг инсталлера выглядит так: крутится колесико, надпись «завершение установки», через секунд 10-15 перекидывает на якобы установленный скрипт, а там уже пустота. Если зайти на глагне, то ошибка Table ‘shop.wa_app_settings’ doesn’t exist
Вобщем нужна какая-то помощь, сам вроде не мальчик, соображаю, но тут уже руки опускаются. Буду благодарен за ответы.
I am unable to install php5-fpm from sudo apt-get install php5-fpm. It says:
No installation candidate.
No .deb repository link available. Does anyone have a solution?
Mochan
1,6884 gold badges21 silver badges40 bronze badges
asked Oct 22, 2012 at 12:55
4
Use exact version. sudo apt-get install php5.6-fpm
worked for me
answered May 21, 2018 at 11:37
Nitish kumarNitish kumar
611 gold badge1 silver badge6 bronze badges
1
php5-fpm is available in all supported Ubuntu releases, but is in universe in all of them. Try enabling universe, run sudo apt-get update and then try sudo apt-get install php5-fpm again.
answered Mar 7, 2013 at 12:09
Robie BasakRobie Basak
15.5k4 gold badges61 silver badges86 bronze badges
2
You haven’t stated the Ubuntu version you are using so this is just a wild guess. You are using the Ubuntu version which doesn’t yet include php5-fpm package. This could be for various reasons – one most prominent might be the php5 version – php5-fpm was introduced from some point in time.
You have basically two options here:
-
Upgrade your Ubuntu to more recent version. You can find the availability of php5-fpm here: packages.ubuntu.com/php5-fpm
-
Upgrade your PHP version to most recent from my PPA, see the answer in another thread here: How do I install PHP 5.4.0?
answered Mar 7, 2013 at 11:46
oerdnjoerdnj
7,88039 silver badges49 bronze badges
Доброго времени суток!
Возникла проблема следующего характера:
При установке php-fpm на OC Centos7 выдает следующее
# yum install -y php-fpm php-cli php-mysql php-gd php-ldap php-odbc php-pdo php-pecl-memcache php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap
Загружены модули: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.colocall.net
* epel: mirrors.colocall.net
* extras: centos.colocall.net
* remi-php71: remi.schlundtech.de
* remi-php72: remi.schlundtech.de
* remi-php73: remi.schlundtech.de
* remi-safe: remi.schlundtech.de
* updates: centos.colocall.net
* webtatic: uk.repo.webtatic.com
Пакета с названием php-fpm не найдено.
Пакета с названием php-cli не найдено.
Пакета с названием php-mysql не найдено.
Пакета с названием php-gd не найдено.
Пакета с названием php-ldap не найдено.
Пакета с названием php-odbc не найдено.
Пакета с названием php-pdo не найдено.
Пакета с названием php-pecl-memcache не найдено.
Пакета с названием php-pear не найдено.
Пакета с названием php-xml не найдено.
Пакета с названием php-xmlrpc не найдено.
Пакета с названием php-mbstring не найдено.
Пакета с названием php-snmp не найдено.
Пакета с названием php-soap не найдено.
Ошибка: Выполнять нечего
Перед этим установил nginx. И уже была установлена версия php 7.2.20
Может у кого-то было что-то похожее или есть какие-нибудь идеи?!
задан 11 авг 2019 в 21:15
Ставил php 7.2, 7.3 на centos 6 и 7. Там была какая-то замутка с многоверсионностью php из репозитория remi, подробностей не помню. Остановился на том, что в системе стоит 1 (одна) версия php, которая доступна и в cli, и в apache, и в php-fpm. Добиться такого, как в Ubuntu, — одна версия в апаче, другая в php-fpm, третья в cli — мне не удалось. Если Вас такой вариант устроит, попробуйте удалить установленную версию и установить нужную Вам. Не забудьте отключить репозиторий старой версии после удаления, иначе будет конфликт. Установка как в инструкции у меня проходила нормально.
P.S. Можно еще попробовать ставить не по php, а как php73 или php72:
yum install -y php73-fpm php73-cli php73-mysql...
Идею Вы поняли.
ответ дан 11 авг 2019 в 22:22
Igor DyshlenkoIgor Dyshlenko
1,4292 золотых знака5 серебряных знаков18 бронзовых знаков
в репозитории remi нужно включить в нужном файле enabled=1. например в файле /etc/yum.repos.d/remi-php73.repo
[remi-php73]
name=Remi's PHP 7.3 RPM repository for Enterprise Linux 7 - $basearch
#baseurl=http://rpms.remirepo.net/enterprise/7/php73/$basearch/
#mirrorlist=https://rpms.remirepo.net/enterprise/7/php73/httpsmirror
mirrorlist=http://cdn.remirepo.net/enterprise/7/php73/mirror
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
в остальных файлах напиши enabled=0
тогда при команде yum install -y php-fpm … будет устанавливаться версия 7.3
Ну и вообще посмотри что у тебя вообще находит
yum search php-fpm
у меня например находит:
php-fpm.x86_64 : PHP FastCGI Process Manager
php54-php-fpm.x86_64 : PHP FastCGI Process Manager
php55-php-fpm.x86_64 : PHP FastCGI Process Manager
php56-php-fpm.x86_64 : PHP FastCGI Process Manager
php70-php-fpm.x86_64 : PHP FastCGI Process Manager
php71-php-fpm.x86_64 : PHP FastCGI Process Manager
php72-php-fpm.x86_64 : PHP FastCGI Process Manager
php73-php-fpm.x86_64 : PHP FastCGI Process Manager
php74-php-fpm.x86_64 : PHP FastCGI Process Manager
zabbix-nginx-conf.noarch : Automatic zabbix frontend configuration with nginx and php-fpm
ответ дан 4 сен 2019 в 13:07
Den129Den129
1681 серебряный знак10 бронзовых знаков
I have nginx running on my system and php8.1 installed. But I am getting Bad Gateway problem. I found that I don’t have php8.1-fpm.sock installed on my system:
$ php -ver
PHP 8.1.7 (cli) (built: Jun 10 2022 12:22:31) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.7, Copyright (c) Zend Technologies
with Zend OPcache v8.1.7, Copyright (c), by Zend Technologies
@lc2530hz:/usr/bin$
My file: /etc/nginx/sites-available/default
contains information about php8.1-fpm.sock:
location ~ .php$ {
include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
#}
but I don’t have php8.1-fpm.sock installed on my system:
I am getting the following error in the nginx’s error.log:
2022/06/21 18:01:39 [crit] 2058#2058: *1 connect() to unix:/var/run/php/php8.1-fpm.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1, server: _, request: "GET /w3_scalar.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php8.1-fpm.sock:", host: "localhost"
Also:
@lc2530hz:/var/run/php$ ls
php8.1-fpm.pid
does not give me any information about php8.1-fpm.sock, Kindly guide me how to install php8.1-fpm.sock.
I found following command:
$ sudo apt install php php-cli php-fpm php-json php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath
but I already have php installed on my system. Kindly guide me how to install php8.1-fpm.sock on Ubuntu 18.04.
Zulfi.
@Eugen Rieck Uncommented contents of WWW.conf:
; pool name ('www' here)
[www]
; will be used.
user = www-data
group = www-data
listen = /run/php/php8.1-fpm.sock
; Note: This value is mandatory.
pm = dynamic
; Note: This value is mandatory.
pm.max_children = 5
; Default Value: (min_spare_servers + max_spare_servers) / 2
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
Please guide me how to run php8.1-fpm.sock
Zulfi.
