Una vez instalado el entorno de desarrollo, es necesario instalar el resto de la plataforma de desarrollo. Si vas a programar en lenguaje PHP, necesitas todos los componentes de una arquitectura LAMP; recuerda:
- L de Linux, el sistema operativo.
- A de Apache, el servidor web.
- M de MySQL, el gestor de bases de datos.
- P del lenguaje de programación, que puede ser PHP, Perl o Python. Vamos a instalar el más común de estos tres, PHP.
Puedes instalar los componentes uno a uno, o utilizar el comando tasksel
desde la consola. Este comando viene con algunas tareas predefinidas, que nos permiten instalar con un solo comando grupos de aplicaciones. Entre las tareas que incluye tasksel
se encuentra lamp-server
, que incorpora los componentes de una arquitectura LAMP antes mencionados.
Para ello los pasos que haremos serán los siguientes:
- Instalar
tasksel
(1.1) - Instalar
lamp-server
(1.2) - Habilitar el módulo
userdir
de Apache para pode trabajar en nuestro directorio home y no tener problemas de permisos (2.1) - Crearnos la carpeta
public_html
(2.2) - Configurar Apache para poder ejecutar php en la carpeta
public_html
(2.3) - Comprobar que todo lo anterior ha funcionado (3)
Instalar taskel
y lamp-server
sudo apt install tasksel
sudo apt taskel install lamp-server
Habilitar módulo userdir
Con la configuración predeterminada, la carpeta raíz de dónde el servidor web Apache extrae los documentos que va a publicar es /var/www
. Para no tener problemas de permisos ni tener que estar con el comado sudo
, lo ideal es habilitar el módulo userdir
de Apache, esto nos permitirá trabajar en nuestro home simplemente creándonos la carpeta public_html
(este nombre es OBLIGATORIO). Cada usuario accederá al contenido de la carpeta mediante la url en el navegador http://127.0.0.1/~nombreUsuario/.
Es decir si soy el usuario "juan" accederé con la url http://127.0.0.1/~juan
.
El problema de lo anterior es que Apache por seguridad NO ejecuta PHP en dicho directorio, para solucionar esto editaremos la configuración del fichero /etc/apache2/mods_enable/php7.3.conf
El proceso para todo lo anterior será el siguiente:
- Habilitamos el módulo
userdir
y reiniciamos Apache para que los cambios surtan efecto:
sudo a2enmod userdir sudo systemctl restart apache2
- Creamos en nuestro directorio home la carpeta
public_html
(desde nuestro directorio personal, fíjate que es sin sudo )
mkdir public_html
- Editamos el archivo para permitir la ejecución de PHP en
public_html
.
sudo gedit /etc/apache2/mods-enabled/php7.3.conf #dependerá de la versión de PHP en este caso es la 7.3) sudo systemctl restart apache2 #reiniciamos Apache para que los cambios surtan efecto)
Creamos el archivo info.php
en public_html
con el contenido phpinfo();
en VSC para probar todo.
Veamos una sucesión de imágenes de todo el proceso
Instalar tasksel
(Paso 1.1)

Instalar lamp-server
(Paso 1.2)

Progreso instalación lamp-server
(Paso 1.2)

Activar módulo userdir
en Apache (Paso 2.1)

Crear carpeta public_html
(Paso 2.2)

Carpeta public_html
creada en el home
DEL USUARIO (Paso 2.2)

Habilitar la ejecución de PHP en Directorios web de usuarios (Paso 2.3)
Crear info.php
en public_html
usando VSC (Paso 3)
Comprobar que todo funciona
