Estoy ejecutando un servidor web local con varios sitios web que utilizan una IP compartida. Recientemente actualicé a Ubuntu 22.04.1 LTS y descubrí que solo uno de mis sitios funciona normalmente. No puedo decir con seguridad que este problema no existía en el momento de la actualización, pero no hace mucho que estaba funcionando.
etc/hosts
192.168.1.29 secondbase
192.168.1.29 mattiefernworrix.lan
192.168.1.29 mfwsandbox
192.168.1.29 pinkpoodle
192.168.1.29 mfwx
secondbase
es el nombre del servidor.
mattiefernworrix.lan funciona bien, el primero de la lista. Los otros tres no (mfwsandbox, pinkpoodle y mfwx). En realidad, eso no es del todo cierto. Si solicito una página HTML estática, aparece como se esperaba. Si solicito un archivo .php, falla con el mensaje 503. Todos los archivos php obtienen datos de una base de datos mysql.
Hasta donde puedo determinar, httpd no se está ejecutando.
jking@secondbase:/sbin$ systemctl status httpd
Unit httpd.service could not be found.
Entonces intenté instalar httpd, pero falló.
sudo apt-get update
sudo apt-get install httpd
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package httpd is a virtual package provided by:
nginx-light 1.18.0-6ubuntu14.1
nginx-full 1.18.0-6ubuntu14.1
nginx-extras 1.18.0-6ubuntu14.1
nginx-core 1.18.0-6ubuntu14.1
apache2 2.4.52-1ubuntu4.1
yaws 2.1.1+dfsg-1
webfs 1.21+ds1-12
tntnet 2.2.1-4build2
mini-httpd 1.30-2build1
micro-httpd 20140814-2.1
lighttpd 1.4.63-1ubuntu3
You should explicitly select one to install.
E: Package 'httpd' has no installation candidate
Finalmente, intenté instalar el paquete apache2.
jking@secondbase:/sbin$ sudo apt-get install apache2
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
apache2 is already the newest version (2.4.52-1ubuntu4.1).
0 upgraded, 0 newly installed, 0 to remove and 13 not upgraded.
No estoy seguro de adónde ir desde aquí. ¿Desinstalar apache2 y luego instalarlo nuevamente?
Cualquier ayuda es muy apreciada.
Gracias por su respuesta.
Ejemplos de mensajes de archivos de registro (combinados):
192.168.1.29 - - [27/Aug/2022:16:36:22 -0700] "GET /index2.html HTTP/1.1" 200 318 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:104.0) Gecko/20100101 Firefox/104.0"
192.168.1.29 - - [27/Aug/2022:16:36:31 -0700] "GET /index.html HTTP/1.1" 200 318 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:104.0) Gecko/20100101 Firefox/104.0"
192.168.1.29 - - [27/Aug/2022:16:37:24 -0700] "GET /search_msqli.php HTTP/1.1" 503 565 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:104.0) Gecko/20100101 Firefox/104.0"
[Sat Aug 27 16:37:24.856332 2022] [proxy:error] [pid 1101] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php/php7.4-fpm.sock (*) failed
[Sat Aug 27 16:37:24.856459 2022] [proxy_fcgi:error] [pid 1101] [client 192.168.1.29:37158] AH01079: failed to make connection to backend: httpd-UDS
192.168.1.29 - - [27/Aug/2022:17:05:04 -0700] "GET /search_msqli.php HTTP/1.1" 503 565 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:104.0) Gecko/20100101 Firefox/104.0"
[Sat Aug 27 17:05:04.820227 2022] [proxy:error] [pid 4836] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php/php7.4-fpm.sock (*) failed
[Sat Aug 27 17:05:04.820254 2022] [proxy_fcgi:error] [pid 4836] [client 192.168.1.29:37160] AH01079: failed to make connection to backend: httpd-UDS
192.168.1.29 - - [27/Aug/2022:17:08:50 -0700] "GET /payments_msqli.php HTTP/1.1" 503 565 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:104.0) Gecko/20100101 Firefox/104.0"
[Sat Aug 27 17:08:50.349738 2022] [proxy:error] [pid 1100] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php/php7.4-fpm.sock (*) failed
[Sat Aug 27 17:08:50.349776 2022] [proxy_fcgi:error] [pid 1100] [client 192.168.1.29:37172] AH01079: failed to make connection to backend: httpd-UDS
Encontré esta publicación anterior
phpmyadmin "servicio 503 no disponible": Unbuntu 20.04, MySQL 8.0
Lo averigué. En caso de que alguien más tenga este problema, tuve que agregar el siguiente bloque a mi subdominio VirtualHost, phpmyadmin comienza a aparecer en el subdominio nuevamente:
<FilesMatch ".php$">
SetHandler "proxy:unix:/var/run/php/php7.4->fpm.username.sock|fcgi://localhost/"
</
FilesMatch>
Miré y no tengo un /var/run/php/
directorio.
jking@secondbase:~$ php -v
PHP 8.1.2 (cli) (built: Jul 21 2022 12:10:37) (NTS)
Síntoma de problema adicional
Hola, me acabo de dar cuenta de que lo que dije fue que el único sitio web que funciona solo tiene archivos html, no archivos php. Agregué el archivo info.php y obtuve la respuesta 503. Por lo tanto, TODOS los sitios atendidos no pueden procesar archivos php y responden con el mensaje de error 503.
Compruebe si hay libapache2-mod-php
No he hecho nada más que actualizar a 22.04. Supuse que se actualizaría con lo que fuera necesario ya que era una instalación (paquete) existente. ¿Me equivoqué al hacer esa suposición? Todo esto funcionaba antes de la actualización. También ejecuté apt-get update varias veces desde entonces.
Comprobándolo:
jking@secondbase:~$ dpkg -s libapache2-mod-php
Package: libapache2-mod-php
Status: install ok installed
Priority: optional
Section: php
Installed-Size: 18
Maintainer: Ubuntu Developers <[email protected]>
Architecture: all
Source: php-defaults (92ubuntu1)
Version: 2:8.1+92ubuntu1
Depends: libapache2-mod-php8.
Description: server-side, HTML-embedded scripting language (Apache 2 module) (default)
This package provides the PHP module for the Apache 2 webserver.
PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML.
This package is a dependency package, which depends on latest stable
PHP version (currently 8.1).
Original-Maintainer: Debian PHP Maintainers <[email protected]>
¿Versión no coincide?
Entonces el mensaje de error se refiere a php 7.4 /run/php/php7.4-fpm.sock (*) failed
mientras que dpkg se refiere a php 8.1 Version: 2:8.1+92ubuntu1
. ¿Hay algo que deba actualizarse? ¿O algo que deba ser desinstalado/eliminado?
John
Actualizar paquetes
jking@secondbase:/var/log/apache2$ dpkg-query -l libapache2-mod-php8.1
||/ Name Version Architecture Description
+++-=====================-================-============-=======================>
ii libapache2-mod-php8.1 8.1.2-1ubuntu2.3 amd64 server-side, HTML-embed>
jking@secondbase:/var/log/apache2$ dpkg-query -l libapache2-mod-php
||/ Name Version Architecture Description
+++-==================-===============-============-===========================>
ii libapache2-mod-php 2:8.1+92ubuntu1 all server-side, HTML-embedded >
jking@secondbase:/var/log/apache2$ dpkg-query -l libapache2-mod-php7.4
||/ Name Version Architecture Description
+++-=====================-============-============-===========================>
un libapache2-mod-php7.4 <none> <none> (no description available)
jking@secondbase:/var/log/apache2$ dpkg-query -l libapache2-mod-php8.0
||/ Name Version Architecture Description
+++-=====================-============-============-===========================>
un libapache2-mod-php8.0 <none> <none> (no description available)
Desafortunadamente, no hubo ninguna diferencia aparente. Todavía me quejo de PHP7.4 en el archivo error.log:
[Sun Aug 28 23:23:44.600963 2022] [proxy:error] [pid 6221] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php/php7.4-fpm.sock (*) failed
[Sun Aug 28 23:23:44.601007 2022] [proxy_fcgi:error] [pid 6221] [client 192.168.1.29:56866] AH01079: failed to make connection to backend: httpd-UDS
y todavía no tengo /run/php
directorio.
estado del paquete
jking@secondbase:~$ sudo apt list --installed | grep php
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
libapache2-mod-php8.1/jammy-updates,now 8.1.2-1ubuntu2.3 amd64 [installed]
libapache2-mod-php/jammy,jammy,now 2:8.1+92ubuntu1 all [installed]
php-common/jammy,jammy,now 2:92ubuntu1 all [installed]
php8.1-cli/jammy-updates,now 8.1.2-1ubuntu2.3 amd64 [installed,automatic]
php8.1-common/jammy-updates,now 8.1.2-1ubuntu2.3 amd64 [installed,automatic]
php8.1-opcache/jammy-updates,now 8.1.2-1ubuntu2.3 amd64 [installed,automatic]
php8.1-readline/jammy-updates,now 8.1.2-1ubuntu2.3 amd64 [installed,automatic]
jking@secondbase:~$ sudo apt upgrade
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
jking@secondbase:~$ sudo apt update
Hit:1 http://us.archive.ubuntu.com/ubuntu jammy InRelease
Get:2 http://us.archive.ubuntu.com/ubuntu jammy-updates InRelease [114 kB]
Hit:3 https://dl.google.com/linux/chrome/deb stable InRelease
Get:4 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
Get:5 http://us.archive.ubuntu.com/ubuntu jammy-backports InRelease [99.8 kB]
Fetched 324 kB in 1s (337 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
jking@secondbase:~$ sudo apt update --fix-missing
Hit:1 http://us.archive.ubuntu.com/ubuntu jammy InRelease
Hit:2 https://dl.google.com/linux/chrome/deb stable InRelease
Get:3 http://us.archive.ubuntu.com/ubuntu jammy-updates InRelease [114 kB]
Get:4 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
Get:5 http://us.archive.ubuntu.com/ubuntu jammy-backports InRelease [99.8 kB]
Fetched 324 kB in 1s (319 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
jking@secondbase:~$ sudo apt install -f
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
No estoy seguro de adónde ir desde aquí. Probablemente desinstalaré Apache y lo volveré a instalar.
Apreciar el esfuerzo. Gracias.
John
Respuesta1
Prueba esto
sudo a2enmod php8.1
sudo systemctl restart apache2