Joomla es uno de los sistemas de administración de contenido de código abierto más populares que impulsa cientos de miles de sitios web. Está escrito en PHP y contiene un montón de funciones que se pueden ampliar con extensiones y temas gratuitos y premium. Con Joomla, puede crear fácilmente su tienda de comercio electrónico, sitio web personal, sitio social o blog.
En este tutorial, explicaremos cómo instalar Joomla en Ubuntu 18.04. Usaremos una pila LAMP con Apache como servidor web, certificado SSL, el último PHP 7.2 y MySQL/MariaDB como servidor de base de datos.
Requisitos previos #
Asegúrese de que se cumplan los siguientes requisitos previos antes de continuar con este tutorial:
- Tenga un nombre de dominio que apunte a la IP pública de su servidor. Usaremos
example.com
. - Iniciar sesión como usuario con privilegios sudo.
- Apache instalado siguiendo estas instrucciones.
- Tienes un certificado SSL instalado para tu dominio. Puede instalar un certificado SSL gratuito de Let's Encrypt siguiendo estas instrucciones.
Creando una base de datos MySQL #
Joomla puede almacenar sus datos, como artículos, categorías, usuarios, extensiones y configuraciones de temas en una base de datos MySQL, PostgreSQL o MS SQL.
Usaremos MySQL como la base de datos de back-end. Si no tiene instalado MySQL en su servidor Ubuntu, puede instalarlo escribiendo:
sudo apt-get update
sudo apt-get install mysql-server
Inicie sesión en la consola de MySQL escribiendo:
sudo mysql
Desde el shell de MySQL, ejecute la siguiente instrucción SQL para crear una base de datos:
CREATE DATABASE joomla CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
A continuación, cree un nuevo usuario de MySQL y otorgue privilegios a este usuario en la nueva base de datos:
GRANT ALL ON joomla.* TO 'joomlauser'@'localhost' IDENTIFIED BY 'change-with-strong-password';
Una vez hecho esto, salga de la consola mysql escribiendo:
EXIT
Instalando PHP #
PHP 7.2, que es la versión predeterminada de PHP en Ubuntu 18.04, es totalmente compatible y recomendado para Joomla.
Instale PHPtodas las extensiones PHP requeridas con el siguiente comando:
sudo apt update
sudo apt install php7.2 php7.2-cli php7.2-mysql php7.2-json php7.2-opcache php7.2-mbstring php7.2-intl php7.2-xml php7.2-gd php7.2-zip php7.2-curl php7.2-xmlrpc php7.2-xmlrpc
Configure las opciones de PHP recomendadas editando php.ini
archivo con sed
:
sudo sed -i "s/memory_limit = .*/memory_limit = 512M/" /etc/php/7.2/apache2/php.ini
sudo sed -i "s/upload_max_filesize = .*/upload_max_filesize = 256M/" /etc/php/7.2/apache2/php.ini
sudo sed -i "s/post_max_size = .*/post_max_size = 256M/" /etc/php/7.2/apache2/php.ini
sudo sed -i "s/output_buffering = .*/output_buffering = Off/" /etc/php/7.2/apache2/php.ini
sudo sed -i "s/max_execution_time = .*/max_execution_time = 300/" /etc/php/7.2/apache2/php.ini
sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/apache2/php.ini
Reinicie apache para que se carguen las extensiones de PHP recién instaladas:
sudo systemctl restart apache2
Descargando Joomla #
Al momento de escribir este artículo, la última versión de Joomla es la versión 3.9.4.
Antes de descargar el archivo de Joomla, primero cree un directorio que contenga los archivos de Joomla y navegue hasta él:
sudo mkdir -p /var/www/example.com
cd /var/www/example.com
A continuación, descargue la versión actual de Joomla desde la página de descargas de Joomla mediante el siguiente comando wget:
sudo wget https://downloads.joomla.org/cms/joomla3/3-9-4/Joomla_3-9-4-Stable-Full_Package.zip
Una vez que se complete la descarga, descomprima el archivo y mueva los archivos al directorio raíz del documento del dominio:
sudo unzip Joomla_3-9-4-Stable-Full_Package.zip
Cambia el propietario del directorio a www-data
usando el comando chown para que el servidor web pueda tener acceso completo a los archivos y directorios del sitio:
sudo chown -R www-data: /var/www/example.com
Configurando Apache #
A estas alturas, ya debería tener Apache con certificado SSL instalado en su sistema, si no, verifique los requisitos previos para este tutorial.
El siguiente paso es editar la configuración de hosts virtuales de Apache:
sudo nano /etc/apache2/sites-available/example.com.conf
La siguiente configuración de Apache [redirige HTTP a HTTPS] y www a la versión que no es www de su dominio y habilita HTTP2. No olvides reemplazar example.com
con su dominio de Joomla y establezca la ruta correcta a los archivos del certificado SSL.
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
Redirect permanent / https://example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName example.com
ServerAlias www.example.com
Protocols h2 http/1.1
<If "%{HTTP_HOST} == 'www.example.com'">
Redirect permanent / https://example.com/
</If>
DirectoryIndex index.html index.php
DocumentRoot /var/www/example.com
ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem
<Directory /var/www/example.com>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Si no está habilitado, habilite el host virtual para el dominio. Este comando creará un enlace simbólico desde los sites-available
a los sites-enabled
directorio:
sudo a2ensite example.com
Para que la nueva configuración surta efecto, reinicie el servicio Apache escribiendo:
sudo systemctl restart apache2
Completando la instalación de Joomla #
Ahora que se descargó Joomla y se completó la configuración del servidor, es hora de finalizar la instalación de Joomla usando la interfaz web.
Abra su navegador, escriba su dominio y aparecerá una pantalla similar a la siguiente:
Seleccione el idioma que le gustaría usar y complete la siguiente información:
- Nombre del sitio - El nombre de su nuevo sitio web Joomla.
- Descripción - Descripción del sitio web. Esta es una meta descripción alternativa que se usará en todas las páginas sin una descripción específica.
- Dirección de correo electrónico del administrador - La dirección de correo electrónico del usuario administrativo. Utilice un correo electrónico válido. En caso de que olvide su contraseña, recibirá un enlace para cambiar la contraseña en esta dirección de correo electrónico.
- Nombre de usuario del administrador - El nombre de usuario del usuario administrativo. Por razones de seguridad, establezca el nombre de usuario en algo diferente a "admin".
- Contraseña de administrador - La contraseña del usuario administrativo. Asegúrate de usar una contraseña segura. Ingrese la misma contraseña en Confirmar contraseña de administrador campo.
- Sitio sin conexión - Deje el valor predeterminado "No". Si selecciona "Sí", una vez que se complete la instalación, el sitio web mostrará "El sitio está fuera de línea".
Cuando haya terminado, haga clic en el botón "Siguiente".
En la siguiente pantalla, el asistente de configuración le pedirá que ingrese los detalles de conexión de su base de datos.
- Tipo de base de datos - Deje el "MySQLi" predeterminado.
- Nombre de host - Deje el "host local" predeterminado. Si este tutorial la base de datos se encuentra en el mismo servidor.
- Nombre de usuario , Contraseña , Nombre de la base de datos - Ingrese el usuario de MySQL y los detalles de la base de datos que creó anteriormente.
- Prefijo de tabla - Dejar el prefijo generado automáticamente.
- Proceso de base de datos anterior - Deje la opción predeterminada "Copia de seguridad".
Una vez que haga clic en el botón "Siguiente", será redirigido a la página de descripción general:
Aquí puede seleccionar instalar datos de muestra y verificar que se hayan pasado todas las comprobaciones. Haga clic en Install
y una vez que se complete la instalación, accederá a una página que le informará que se ha instalado Joomla.
Si desea instalar idiomas adicionales, haga clic en el botón "Pasos adicionales:Instalar idiomas".
Por razones de seguridad, deberá eliminar el directorio de instalación. Para hacerlo, regrese a la terminal y ejecute el siguiente rm
comando:
sudo rm -rf /var/www/example.com/installation
Para acceder a su back-end de Joomla, haga clic en Adminstrator
botón. Desde aquí, puede comenzar a personalizar su instalación de Joomla instalando nuevos temas y complementos.