Mi sistema operativo es Ubuntu 22.04
Empecé instalando php 8.1
Luego instalé el servidor Apache/2.4.52 (Ubuntu)
Luego agregué lo siguiente:
sudo apt-get install -y php php-cli php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-bcmath libapache2-mod-php
El comando: php -v, produce:
PHP 8.1.2-1ubuntu2.8 (cli) (built: Nov 2 2022 13:35:25) (NTS)
Luego modifiqué:
/etc/apache2/mods-enabled/dir.conf: DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
Reinicié el servidor apache2.
Agregué un archivo index.php, pero cuando intento ir a la página web, solo veo la lista de index.php
<?php
echo 'This is a test';
También tengo un archivo index.html allí:
<h1>This is a test</h1>
Cuando elimino index.php y vuelvo a la página web, veo
This is a test
En letra grande y en negrita, como se esperaba.
El manual de PHP (así como la respuesta que encontré en este sitio) hace referencia a un archivo httpd.conf y quiere que agregue:
LoadModule php_module modules/libphp.so
pero no tengo un httpd.conf en Ubuntu 22.04, tengo un apache2.conf en la carpeta /etc/apaache2, que es un archivo esqueleto que carga todo desde varias subcarpetas.
Cuando lo intenté:
sudo a2enmod php
Obtuve:
ERROR: Module php does not exist!
¿Algunas ideas?
Editar:
Hice:
cd /etc/apache2
grep -R php
Y esto es lo que obtuve:
sites-available/default-ssl.conf: <FilesMatch "\.(cgi|shtml|phtml|php)$">
sites-available/default-ssl.conf.original: <FilesMatch "\.(cgi|shtml|phtml|php)$">
mods-enabled/dir.conf: DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
mods-available/dir.conf: DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
Y haciendo:
sudo a2enmod php8.1
Produce el mismo error:
ERROR: Module php8.1 does not exist!
Y buscando los paquetes instalados, obtengo:
libapache2-mod-php8.1/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed,automatic]
libapache2-mod-php/jammy,now 2:8.1+92ubuntu1 all [installed]
php-bcmath/jammy,now 2:8.1+92ubuntu1 all [installed]
php-cli/jammy,now 2:8.1+92ubuntu1 all [installed]
php-common/jammy,now 2:92ubuntu1 all [installed]
php-curl/jammy,now 2:8.1+92ubuntu1 all [installed]
php-gd/jammy,now 2:8.1+92ubuntu1 all [installed]
php-mbstring/jammy,now 2:8.1+92ubuntu1 all [installed]
php-mysql/jammy,now 2:8.1+92ubuntu1 all [installed]
php-xml/jammy,now 2:8.1+92ubuntu1 all [installed]
php-zip/jammy,now 2:8.1+92ubuntu1 all [installed]
php8.1-bcmath/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-cli/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-common/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-curl/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-gd/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-mbstring/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-mysql/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-opcache/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed,automatic]
php8.1-readline/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed,automatic]
php8.1-xml/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-zip/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 all [installed,automatic]
php/jammy,now 2:8.1+92ubuntu1 all [installed]