LAMP en Ubuntu LTS

LAMP en Ubuntu LTS

Está guía era la base de mi desarrollo LAMP antes de conocer docker, por lo tanto ya no la actualizo más. Haré todo lo posible en mantener actualizado este post con la última LTS de Ubuntu.

Instalar el Software

Tasksel y lamp-server

Ubuntu tiene un paquete llamado tasksel que se usa en los servidores ára instalar diferentes grupos de paquetes, entre los cuales está el lamp-server.

sudo apt install -y tasksel
sudo tasksel install lamp-server

phpMyAdmin

Luego instalaremos el phpmyadmin para administrar la base de datos. Yo realizo la instalación sin ingresar contraseña y lo modifico en el siguiente paso.

sudo apt install -y phpmyadmin

Revisar la contraseña generada por phpmyadmin en /etc/phpmyadmin/config-db.php , se apunta la contraseña que aparece en la variable $dbpass, la cual será usada más adelante. Se procede a ingresar en mysql con nuestro usuario sudo

sudo mysql -u root -p

Ya en mysql ingresaremos las siguiente instrucción, recordando cambiar la contraseña por la que apuntamos anteriormente.

ALTER USER 'phpmyadmin'@'localhost' IDENTIFIED WITH mysql_native_password BY 'contraseña';

Luego se asigna una contraseña para el root

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'contraseña_root';

Se creaa un usuario alterno a root:

CREATE USER 'usuario'@'localhost' IDENTIFIED BY 'contraseña_usuario';
GRANT ALL PRIVILEGES ON * . * TO 'usuario'@'localhost';

para terminar, se realiza una recarga de privilegios

FLUSH PRIVILEGES;
quit;

Configuración

Habilitar mod_rewrite

Esto nos va a permitir usar los archivos .htaccess

sudo a2enmod rewrite

Habilitar directorios de usuario

Esto nos permite que la carpeta **/home/username/public_html** del directorio de usuario, pueda tener acceso web desde la dirección https://rolandoramostorres.com/~username

sudo a2enmod userdir

Habilitar .htaccess en directorios de usuario

Para que en los directorios de usuario se puedan usar archivos .htaccess se debe realizar una modificación en el archivo /etc/apache2/mods-enabled/userdir.conf :

sudo nano /etc/apache2/mods-enabled/userdir.conf

En donde se debe asegurar que se cambien las siguientes lineas:

<Directory /home/*/public_html>
        AllowOverride FileInfo AuthConfig Limit Indexes
        Options MultiViews Indexes SymLinksIfOwnerMatch Include>
        Require method GET POST OPTIONS
</Directory>

por:

<Directory /home/*/public_html>
        #AllowOverride FileInfo AuthConfig Limit Indexes
        AllowOverride All
        Options MultiViews Indexes SymLinksIfOwnerMatch Include>
        Require method GET POST OPTIONS
</Directory>

Habilitar ejecución de php en directorios de usuario

Esto se realiza modificando unas lineas de la configuración de php ubicada en /etc/apache2/mods-enabled/php7.4.conf

<IfModule mod_userdir.c>
    <Directory /home/*/public_html>
        php_admin_flag engine Off
    </Directory>
</IfModule>

Cambiar por las siguientes:

<IfModule mod_userdir.c>
    <Directory /home/*/public_html>
        php_admin_flag engine On
    </Directory>
</IfModule>

Reiniciar el servidor

Para terminar se reinicia el servidor apache para que todos los cambios tengan efecto.

sudo systemctl restart apache2

Gracias

¡Gracias a todos! Sus aportes lo hacen posible. Si desea ayudar y apoyarnos a crear mejor contenido, puede hacer su donativo a través de paypal:

Algunos derechos reservados

Compartir en Redes sociales

A continuación

Cómo instalar RAR en Linux (binario oficial de RARLab)

Una autobiografía

LAMP en Manjaro

Relacionado


¿Músico?

Si desea conocer sobre mi actividad musical lo invito a que visite la página principal. Allí encontrará todo sobre mi música.