Instalar Apache PHP 7.4 MySQL phpMyAdmin en Ubuntu 22
Instalar Apache, PHP 7.4, MySQL en Ubuntu 22
En este artículo aprenderas los siguientes temas:
- InstalarApache 2
- Crear usuario alternativo al root en MySQL
- Instalar PHP 7.4
- Habilitar Mod_rewrite en Apache 2
- Cambiar CLI entre versiones de PHP
- Cambiar GUI entre versiones de PHP
- Modificar archivo de configuración php.ini
Instalar Apache 2
sudo apt-get -y install apache2
El siguiente comando instalará el servidor de MySQL y el cliente en una sola linea.
sudo apt-get -y install mysql-server mysql-client
Configurar mysql
Al quedar instalado podras entrar con el usuario root de linux con el comando:
sudo mysql -u root
Si no funciona puedes utilizar el siguiente comando para entrar con el usuario root
sudo mysql
Crear usuario alternativo al root en MySQL
Logearse como root o super usuario:
sudo mysql
Crea un usuario llamado admin, y deberas establecer la constraseña
por una contraseña valida para que tengas acceso, te recomiendo guardarla en un lugar seguro
CREATE USER 'admin'@'localhost' IDENTIFIED BY 'Tu-Contraseña-segura';
Deberas de dar todos los permisos al usuario admin con el siguiente comando.
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
Generar Flush privilegios en base de datos utilizando el siguiente comando:
FLUSH PRIVILEGES;
Salir de mysql
exit
Con esto ya podras loguearte desde la consola de mysql utilizando el comando;
mysql -u admin -p
Recuerda que con este comando te pedira la contraseña correspondiente a tu usuario admin que acabas de crear.
De igual manera te podras loguear con aplicaciones como DBBear o Workbench y tambien desde aplicaciones web.
Es posible que para utilizar DBBear necesites una configuración extra dejo el link que te puede ayudar,
Instalar PHP 7.4
Agregar repositorio privado o "ppa" "ondrej/php" este es un repositorio privado que permite la instalación de varias versiones de php en un mismo equipo.
Para mayor informacion sobre este repositorio consulte:
Agregar repositorio
sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
Actualizar apt.
sudo apt update
Instalar la version php 7.4, puede cambiar la version por la deseada
sudo apt install php7.4
Comprobar la version instalada
php -v
Instalar las extensiones de php, puede cambiar las versiones de PHP para instalar las adecuadas.
sudo apt install php7.4-mysql php7.4-mbstring php7.4-xml php7.4-curl php7.4-gd php7.4-zip
O puede instalarlas de manera individual, ejemplo:
sudo apt install php7.4-zip
Cabe mencionar que si haces instalaciones de nuevas librerias php es necesario reiniciar apache para que funcionen con el siguiente comando:
sudo systemctl restart apache2
Otras librerias que podria necesitar instalar pero son opcionales
Modulo de intercionalizacion
sudo apt-get install php7.0-intl
Configura propiedad de la carpeta principal
sudo chown www-data:www-data /var/www/html/
Dar permiso de escritura a la carpeta de publición "html" para poder crear carpetas dentro de la carpeta "html".
sudo chmod 777 /var/www/html/
Crear un archivo para comprobar la version de PHP instalada en "var/www/html/info.php"
sudo nano var/www/html/info.php
Y escribir dentro del archivo;
<?php
phpinfo();
Accesar mediante la web en ; http://localhost/phpinfo.php y deberas poder ver la pagina de información de php.
Habilitar Mod_rewrite en Apache 2
Este paso es opcional pero considero que debas instalarlo si piensas utilizar algun framework como wordpress o cualquier otro, ya que éste modulo es el que permite habilitar el redireccionamiento de url entre otros.
El modulo Mod_rewrite no viene habilitado por default, por lo que se tiene que habilitar de manera manual, puedes seguir estos pasos para hacerlo.
Habilita desde consola
Para habilitarlo debes ejecutar el siguiente comando.
sudo a2enmod rewrite
Si todo sale bien veras un mensaje como e siguiente:
Module rewrite already enabled
Y debes reinicia apache con el siguiente comando:
sudo systemctl restart apache2
Vas a necesitar una configuración mas para poder utilizar el archivo de configuración de apache2 ".htaccess" para cada uno de tus sitios que tengas alojados en el servidor, por lo tanto te recomiendo seguir los siguientes pasos para habilitar el uso de archivo ".htacces".
Habilitar el acceso para archivos .htaccess
Hay un paso adicional que se tiene que hacer ya que por default la ejecución de archivos .htaccess no se permite por default por lo que se tiene que habilitar de la siguiente manera.
Edita desde consola el siguiente archivo con el comando:
sudo nano /etc/apache2/apache2.conf
Debes ubicar dentro del archivo la sección que dice "<Directory /var/www/>":
Debes cambiar dentro de esa sección donde dice "AllowOverride None" por "AllowOverride All", con este cambio se permitirá utilizar el archivo ".htaccess" para todos los sitios que estén publicados.
Una vez cambiado guarda el archivo.
Reinicia apache para aplicar los cambios
sudo systemctl restart apache2
Con estos cambios ya deberias poder utilizar el modulo Mod_rewrite y poder utilizar los archivos ".htaccess" para configurar tus sitios web.
Si has llegado hasta aquí ya debes tener todo instalado, este blog se alimenta de los comentarios, deja tus comentarios si algo no quedó claro.
Permisos para carpetas que necesitan permisos de escritura
Es posible que necesites cambiar los permisos de algunas carpetas donde tu aplicación web necesite escribir archivos en el servidor, por ejemplo una carpeta de log o alguna carpeta de carga de archivos, para estos casos deberas ejecutar el siguiente comando para dar permisos de escritura a cada carpeta:
sudo chmod 777 /var/www/html/siteone/folder/
Con este comando das permisos de escritura dentro de la carpeta a la aplicación.
Puedes ejecutar un comando "ls -l" para comprobar los permisos que fueron aplicados.
Cambiar CLI entre versiones de PHP
Una de las bondades del paquete ondrej/php es que te permite cambiar entre las versiones de php, para esto puede ejecutar el siguiente comando.
sudo update-alternatives --config php
Una vez que lo ejecuta se mostrara un menu como el siguiente:
Cambiar GUI entre versiones de PHP
Para saber que version de GUI esta utilizando puede crear un archivo en la carpeta de publicación "var/www/html" y agregar la función "phpinfo" y guardarlo con el nombe info.php para ver la información del GUI como lo muestra la siguiente imagen.
Puede cambiar la versión del GUI siempre y cuando tenga instalado la versión del modulo correspondiente. En el siguiente ejemplo ya tengo instalada la version "php7.4" y voy a cambiarlo a la version "php8.1".
En mi caso no tengo instalada la version "php8.1" por lo cual la voy a instalar de la siguiente manera:
sudo apt install php8.1
Una vez que termino de instalar procedo a Deshabilitar la version actual de php:
sudo a2dismod php7.4
Con este comando queda deshabilitada la version del GUI.
Ahora tenemos que habilitar la versión que deseo (Recurda que la tienes que instalar previamente).
sudo a2enmod php8.1
Deberas de poder ver este mensaje:
Module php8.1 already enabled
Podras actualizar la pagina de info.php y deberas poder ver el cambio de la version.
Modificar archivo de configuración php.ini
Para modificar el archivo de configuración te puedo recomendar el siguiente comando revise la configuración de la GUI a travez de la función phpinfo() dentro de la variable Loaded Configuration File en la cual se indica la ruta del archivo de configuración php.ini.
Fecha de atualización de artículo: 23-Enero-2023
Referencias:
Instalar varias versiones de PHP
https://tecadmin.net/how-to-install-php-on-ubuntu-22-04/
Cambiar entre versiones de PHP
https://tecadmin.net/switch-between-multiple-php-version-on-debian/
https://www.ezeelogin.com/kb/article/how-to-install-and-switch-different-versions-of-php-in-ubuntu-506.html
Habilitar Mod rewrite
https://lowendbox.com/blog/setup-and-configure-mod_rewrite/
Comentarios
Publicar un comentario