Instalar LAMP y WordPress en Fedora 43

Instalar LAMP y WordPress en Fedora 43

Instalar LAMP y WordPress en Fedora 43

Hola, ¿cómo están? Quiero contarles algo que probablemente les suene familiar si desarrollan sitios con WordPress.

Llevo ya un buen tiempo desarrollando sitios en WordPress (desde el 2017), y hay algo que siempre, siempre, me da dolores de cabeza cada vez que arranco un proyecto nuevo: levantar un entorno de pruebas local. Parece una tontería, pero no tienen idea de la cantidad de horas que he perdido por culpa de detalles tontos que no funcionan como deberían.

He probado de todo. Empecé con XAMPP en todos sus sabores (Linux, Windows y macOS), el que al principio parecía genial… hasta que un día algo dejó de andar y no había forma humana de entender por qué. Pasé por MAMP, (en su versión para macOS), con la esperanza de que fuera más estable. Spoiler: no lo fue. Un día todo funcionaba perfecto, al siguiente, error error, fallas aquí, fallas allá, permisos que no funcionaban correctamente, y yo, sin poder arreglarlo, casi me arrancaba la cabeza.

Luego descubrí LocalWP. La verdad, tiene una interfaz bonita y es bastante fácil de usar. Pero claro, si quieres ver el sitio desde otro dispositivo, tienes que sí o sí registrarte. Y eso ya me molesta. Además, por alguna razón que nunca entendí, las imágenes a veces simplemente no se muestran. Y cuando estás trabajando en algo visual, eso es lo más frustrante del mundo. Te hace sentir que estás perdiendo el tiempo, solo tratando de que algo básico funcione.

Así que un día dije: basta. Me armé mi propio servidor LAMP para tener el control total. Nada de interfaces bonitas que fallan cuando no deberían. Quería algo que simplemente funcione y que no me dé sorpresas raras.

Por eso armé esta guía. Es mi forma de poner orden. La dividí en pasos bien claros, sin vueltas, para que cualquiera (incluyéndome a mí en el futuro) pueda montar su entorno sin sufrir.

En este artículo no voy a meterme aún en la instalación específica de WordPress ni en los permisos —eso lo voy a explicar en la próxima parte—, pero por ahora quiero ayudarte a dejar todo listo para cuando llegue ese momento.

Parafraseando al maestro MoureDev, ¡Comencemos!


Mantén tu Fedora a la última

Antes de cualquier otra cosa, asegúrate de que tu sistema esté al día:

sudo dnf -y update

Esto es como limpiar antes de meter los muebles. ¡Orden primero!


Activa el modo permisivo en SELinux

Esto es importante para poder visualizar WordPress en la red local.

sudo setenforce 0
sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config

Instala Apache

Ahora sí, vamos al grano. Apache será nuestro servidor web, generalmente ya está instalado, al menos ha sido así en todas las veces que lo he probado, pero por si acaso, así se instala:

sudo dnf -y install httpd

Ajusta algunas configuraciones básicas en /etc/httpd/conf/httpd.conf para que tu servidor tenga un nombre.

ServerAdmin admin@example.com
ServerName example.com
ServerTokens Prod

Actívalo y haz que se quede encendido:

sudo systemctl start httpd
sudo systemctl enable httpd

Comprueba si está funcionando, es opcional, pero si luego algo no funciona, es probable que sean por aquí los tiros:

sudo systemctl status httpd

Y abre el paso de http y https a tu servidor por el firewall:

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

Instala PHP y sus extensiones

Sin PHP, tu web sería como un coche sin motor. Así que, instala lo necesario:

sudo dnf -y install php php-cli php-php-gettext php-mbstring php-mcrypt php-mysqlnd php-pear php-curl php-gd php-xml php-bcmath php-zip php-fpm

Revisa tu versión de PHP, en fedora 42 al día de hoy es la 8.4.8

php -v

Y ajusta la zona horaria en /etc/php.ini:

date.timezone = America/Mexico_City

MariaDB, el motor de tus datos

Con este comando agregamos la Base de Datos de MariaDB.

sudo dnf -y install mariadb-server

Y así lo activamos y también activamos el arranque automático:

sudo systemctl enable mariadb
sudo systemctl start mariadb

Con esto se configura el conjunto de caracteres predeterminado del servidor MariaDB, se hace desde /etc/my.cnf.d/mariadb-server.cnf

[mysqld]
character-set-server=utf8

Agrega seguridad a MariaDB, tú escoge las opciones, sé libre.

sudo mysql_secure_installation

Accede como root:

mysql -u root -p

Y abre paso en el firewall:

sudo firewall-cmd --add-service=mysql --permanent
sudo firewall-cmd --reload

¿Quieres permitir acceso solo desde tu red de confianza? Hazlo así:

sudo firewall-cmd --permanent --add-rich-rule 'rule family="ipv4" service name="mysql" source address="10.1.1.0/24" accept'

Verifica que todo esté bien

Crea un archivo PHP para probar:

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

Reinicia Apache:

sudo systemctl restart httpd

Y comprueba en tu navegador:

http://localhost/info.php

Instala PHPMyAdmin para más comodidad

Si quieres gestionar tus bases de datos desde el navegador:

sudo dnf -y install phpmyadmin
sudo systemctl restart httpd

Y accede a:

http://localhost/phpmyadmin

Conclusión

¡Listo! Ahora tienes tu propio servidor LAMP corriendo en Fedora, listo para lo que se te ocurra: proyectos, pruebas o simplemente para lucirte. No fue tan complicado como parecía.

¡Mucho éxito con tu nuevo entorno, y que no falten las buenas ideas!

Nos vemos pronto para instalar WordPress y hacerlo funcionar sin problemas.


Bonus: Cómo instalar WordPress y dejarlo funcionando sin dolores de cabeza

Ahora que tu servidor LAMP ya está listo, viene la parte emocionante: poner WordPress en marcha.

Aquí te dejo una guía directa y sin vueltas para que puedas mover tu instalación a /var/www/html, configurar permisos correctamente y evitar los típicos errores de rutas o archivos que no cargan en la red local.


Descarga WordPress y colócalo en tu carpeta pública

Primero mueve tu proyecto (o la carpeta recién descargada de WordPress) a la ruta donde Apache sirve los sitios:

sudo cp -r ~/Descargas/misitio /var/www/html/misitio

Puedes cambiar misitio por el nombre real del proyecto.


Establece el propietario correcto (muy importante)

Apache en Fedora usa el usuario y grupo apache. Si no asignas esto, WordPress no podrá crear archivos, subir imágenes o modificar configuraciones.

sudo chown -R apache:apache /var/www/html/misitio

Ajusta los permisos recomendados

Estos permisos siguen las buenas prácticas de seguridad para WordPress:

  • Carpetas → 755
  • Archivos → 644
sudo find /var/www/html/misitio -type d -exec chmod 755 {} \;
sudo find /var/www/html/misitio -type f -exec chmod 644 {} \;

(Opcional) Permisos amplios sólo para desarrollo del tema

Si estás desarrollando un tema desde cero dentro de wp-content/themes y necesitas modificar archivos rápidamente desde tu editor, puedes dar permisos amplios temporalmente:

sudo chmod -R 777 /var/www/html/misitio/wp-content/themes

Advertencia: No es recomendable dejar 777 en producción.
Sólo úsalo mientras desarrollas y vuelve a 755 cuando ya no lo necesites.


Crea tu base de datos desde PHPMyAdmin

Antes de que WordPress pueda funcionar, necesita un lugar donde guardar todo: entradas, usuarios, ajustes, menús, plugins… absolutamente todo. Ese lugar es la base de datos.

Crea la BD desde el panel de PHPMyAdmin.


Arranca tu instalación de WordPress

Entra a localhost/misitio desde tu navegador y sigue los pasos para lanzar tu sitio WordPress.

Ten anotados estos datos porque los vas a necesitar en la pantalla de instalación:

  • Nombre de la base de datos: misitio_db
  • Usuario de la BD: wp_user (o el que hayas elegido)
  • Contraseña: la que asignaste
  • Servidor de la BD: localhost

Con esto ya podrás avanzar sin problemas y completar la instalación.


Configurar WordPress para funcionar en la red local

Cuando accedes a tu sitio desde otra computadora o dispositivo, WordPress necesita saber la URL correcta del servidor.
Si no lo haces, verás errores como:

  • CSS y JS que no cargan
  • Imágenes rotas
  • Redirecciones raras hacia localhost

Para solucionarlo, actualiza siteurl y home según la IP local de tu equipo (cámbiala por la tuya):

  1. Entra a PHPMyAdmin: http://localhost/phpmyadmin
  2. Selecciona tu base de datos.
  3. Ejecuta esto en SQL:
UPDATE wp_options 
SET option_value = 'http://192.168.0.1/misitio' 
WHERE option_name IN ('siteurl', 'home');

¡Y listo! WordPress ya sabrá como enrutar esos archivos.


Verifica que todo funcione

Abre en tu navegador:

http://192.168.0.1/misitio

Si todo está bien, verás el instalador de WordPress o tu sitio funcionando sin fallos de rutas, permisos o archivos que no cargan.


Conclusión del Bonus

Con este último paso, ya tienes:

✔ WordPress instalado
✔ Permisos seguros (y flexibles si estás desarrollando temas)
✔ Acceso desde cualquier dispositivo en tu red local
✔ Un entorno sin los típicos errores de “no carga el CSS” o “Apache no me deja escribir archivos”

Tu servidor Fedora ahora está listo para trabajar

Leave a Reply

Your email address will not be published. Required fields are marked *