InicioLinuxInstalación y configuración del entorno LAMP en ArchLinux

Instalación y configuración del entorno LAMP en ArchLinux

Linux•12/3/2012

Ahora que las nuevas instalaciones de ArchLinux usan systemd de manera predeterminada, algunas cosas han cambiado, entre ellas, ciertos detalles en la instalación y configuración del entorno LAMP (Linux + Apache + MySQL + PHP).

Aprovechando que hace unos días realicé una instalación limpia en mi equipo de producción, también lo hice con dicha instalación y configuración, misma que comparto con ustedes en el presente tutorial.


Paso 1. Instalación de los paquetes necesarios


Antes que nada, instalemos los paquetes básicos que necesitaremos.

sudo pacman -S apache php php-apache mysql

Paso 2. Ejecutando Apache


Ejecutemos (vía systemd) nuestro servidor web Apache con las configuraciones predeterminadas:

sudo systemctl start httpd.service
Ahora bien, ¿cómo se llama tu servidor? Eso lo tienes establecido en dos archivos: /etc/hostname y /etc/hosts. Lo más común es que en ambos tengas localhost. Si no es así, reemplaza “localhost” por tu nombre de servidor en el resto del tutorial.

En tu navegador web favorito, entra a http://localhost/ o http://127.0.0.1/ donde veremos algo similar a la siguiente captura de pantalla.



¡Muy feo! ¿verdad? Es porque localhost no tiene ningún contenido, ¡así que vamos a solucionarlo!.


Paso 3. Creando nuestro index.html


Antes de crear nuestro index.html, debemos tener en cuenta dos detalles que se encuentran establecidos en /etc/httpd/conf/httpd.conf (el archivo de configuración principal de Apache en ArchLinux):

• Durante el booteo del sistema, el encargado de ejecutar Apache es root, pero por motivos de seguridad, de inmediato se cambia al usuario http (que a su vez pertenece al grupo http).

• La carpeta predeterminada para el contenido de localhost es /srv/http, cuyo propietario es root de manera predeterminada.

Debido a lo anterior, debemos realizar algunas acciones para poder empezar a crear contenido en nuestro servidor web local.

1. Primero, debemos agregar nuestro usuario al grupo http.

sudo gpasswd -a miusuario http
Debemos cerrar nuestra sesión actual y volver a loguearnos para que el cambio sea aplicado.

2. Ahora, debemos ceder la propiedad de root a http (tanto para el usuario como para el grupo) de manera recursiva para /srv/http.

sudo chown -R http:http /srv/http
3. Debemos establecer permisos de escritura para el grupo http (al cual nos hemos agregado) para la misma carpeta (y todo su contenido).

sudo chmod -R g+w /srv/http
Ahora si, ya podemos crear nuestro index.html, el cual puede ser desde una simple línea de texto …

echo 'Hola Mundo!' > /srv/http/index.html
… hasta algo más elaborado (usa tu editor preferido y guardalo como index.html en /srv/http/).

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="utf-8">
    <title>¡Bienvenidos a ArchLinux!</title>
    <style>
        body { margin: 0; font-family: Helvetica, Arial, sans-serif; }
        h1 { background: #ccc; margin: 0; padding: 10px; }
        #contenido { margin: 10px auto; padding: 10px; width: 500px; }
    </style>
</head>
<body>
<div id="contenido">
    <h1>¡Bienvenido!</h1>
    <p><strong>Apache</strong> corriendo bajo <strong>ArchLinux</strong> con <strong>systemd</strong>.</p>
</div>
</body>
</html>


Paso 4. Configurando PHP


Este paso es el típico de siempre. Vamos a configurar Apache para que reconozca a PHP.

Primero, como root, abre el archivo /etc/httpd/conf/httpd.conf con tu editor favorito. Por ejemplo:

sudo vim /etc/httpd/conf/httpd.conf
Ahí, realiza los siguientes cambios:

1. En la lista que tiene todos los “LoadModule“, y después de LoadModule dir_module modules/mod_dir.so, agrega la línea:

LoadModule php5_module modules/libphp5.so
2. Al final de la lista de todos los “Include“, agrega la línea:

Include conf/extra/php5_module.conf
3. Asegúrate que la siguiente línea no esté comentada (que no tenga “#” al inicio) en la sección :

TypesConfig conf/mime.types
4. Descomenta (elimina el “#” del inicio) la siguiente línea:

MIMEMagicFile conf/magic
Ahora, como root, abre el archivo /etc/httpd/conf/mime.types con tu editor preferido (¡seguro que es vim!). Por ejemplo:

sudo vim /etc/httpd/conf/mime.types
Al final de dicho archivo agrega la línea:

application/x-httpd-php5            php php5
¡Listo! Reiniciemos Apache para aplicar los cambios:

sudo systemctl restart httpd.service
Para probar que Apache ya reconoce a PHP, vamos a crear el típico archivo de ejemplo:

echo '<?php phpinfo(); ?>' > /srv/http/info.php
Y finalmente, para verlo entra a tu navegador web, y entra a http://localhost/info.php



Paso 5. Configurando MySQL


Primero, vamos a ejecutar de inmediato el servidor de base de datos MySQL con:

sudo systemctl start mysqld.service
Para que se ejecute en cada booteo, usamos:

sudo systemctl enable mysqld.service
Y antes de que hagamos cualquier otra cosa, debemos establecer la contraseña del usuario “root” de MySQL (no es el mismo que el root del sistema). La forma más sencilla de hacerlo, es ejecutar la siguiente utilería:

mysql_secure_installation
Lo anterior nos preguntará primero la contraseña actual de root, la cual no existe, así que debemos dar [ Enter], y entonces escribir (y confirmar) la nueva contraseña. Adicionalmente, la utilería nos preguntará algunos detalles adicionales, a los cuales se sugiere responder las opciones predeterminadas.

Ahora, tenemos que decirle a PHP de la existencia de MySQL. Vamos a abrir el archivo /etc/php/php.ini con tu editor favorito …

sudo vim /etc/php/php.ini
… y descomentar (eliminar el “;” al inicio) las siguientes líneas:

 extension=mysqli.so
 extension=mysql.so

Si deseas realizar alguna modificación en los parámetros de MySQL debes hacerlo editando el archivo /etc/mysql/my.cnf.

Finalmente, reiniciemos Apache y MySQL para aplicar los cambios realizados.

sudo systemctl restart httpd.service
sudo systemctl restart mysqld.service

Comentarios Adicionales

Aunque ya los mencioné, no olviden que los archivos de configuración son:

• Apache: /etc/httpd/conf/httpd.conf
• PHP: /etc/php/php.ini
• MsSQL: /etc/mysql/my.cnf


Tampoco olviden que bajo systemd, se utilizan los comandos:

• Habilitar para cada booteo: sudo systemctl enable <servicio>
• Ejecutar de inmediato: sudo systemctl start <servicio>
• Detener de inmediato: sudo systemctl stop <servicio>
• Reiniciar de inmediato: sudo systemctl restart <servicio>
• Ver el estado del servicio: sudo systemctl status <servicio>

Donde <servicio> puede ser alguno de los siguientes:

Apache: httpd.service
MySQL: mysqld.service


Por último, no olviden consultar la documentación oficial para más información:

•
•
•
Datos archivados del Taringa! original
86puntos
327visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
11visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

a
Usuario
Puntos0
Posts19
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.