Cómo instalar Fork CMS en Ubuntu Server 22.04
Fork es un sistema de gestión de contenidos de código abierto para principiantes y profesionales. Está diseñado para crear un entorno fácil de usar para construir, controlar y actualizar tu sitio web. Se lanzó principalmente como un CMS que proporciona módulos adicionales como blogs, páginas y usuarios. Sus potentes aplicaciones y temas te ayudan a personalizar tu sitio web según tus necesidades. Tiene una interfaz de usuario fácil de usar que ayuda a los usuarios a crear sitios web de forma rápida y sencilla.
Este tutorial te mostrará cómo instalar Fork CMS con Apache y Let’s Encrypt SSL en Ubuntu 22.04.
Requisitos previos
- Un servidor que ejecute Ubuntu 22.04.
- Un nombre de dominio válido apuntando a la IP de tu servidor.
- Una contraseña de root está configurada en el servidor.
Instalar Apache, MariaDB y PHP
En primer lugar, instala el servidor web Apache y el servidor MariaDB utilizando el siguiente comando:
apt-get install apache2 mariadb-server -y
A continuación, tendrás que instalar la versión 7.4 de PHP y otras extensiones en tu servidor. Sin embargo, la versión PHP 7.4 no está incluida en el repositorio por defecto de Ubuntu. Así que tendrás que añadir el repositorio Ondrej PHP a tu servidor. Puedes añadirlo con el siguiente comando:
apt install software-properties-common add-apt-repository ppa:ondrej/php -y
Una vez añadido el repositorio PHP, puedes instalar PHP con otras extensiones necesarias mediante el siguiente comando:
apt-get install php7.4 libapache2-mod-php7.4 php7.4-xml php7.4-cli php7.4-zip php7.4-common php7.4-sqlite3 php7.4-curl php7.4-intl php7.4-mbstring php7.4-xmlrpc php7.4-mysql php7.4-gd wget unzip -y
Después de instalar todos esos paquetes, edita el archivo de configuración de PHP y cambia los ajustes por defecto:
nano /etc/php/7.4/apache2/php.ini
Cambia los siguientes ajustes según tus necesidades:
memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 file_uploads = On date.timezone = UTC
Guarda y cierra el archivo y reinicia el servicio Apache para aplicar los cambios de configuración:
systemctl restart apache2
Crear la base de datos Fork CMS
En primer lugar, tendrás que asegurar MariaDB y establecer la contraseña raíz de MariaDB. Puedes ejecutar el siguiente script para asegurar la instalación de MariaDB:
mysql_secure_installation
Este script establecerá una contraseña de root, eliminará los usuarios anónimos, no permitirá el inicio de sesión de root de forma remota y eliminará la base de datos de prueba, como se muestra a continuación:
Set root password? [Y/n] n Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y Once MariaDB is secured, log in to MariaDB shell:
A continuación, accede al shell de MariaDB con el siguiente comando:
mysql -u root -p
Introduce la contraseña de root y crea una base de datos y un usuario para Fork CMS:
MariaDB [(none)]> CREATE DATABASE forkdb; MariaDB [(none)]> CREATE USER 'forkuser'@'localhost' IDENTIFIED BY 'password';
A continuación, concede privilegios a la base de datos Fork CMS con el siguiente comando:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON forkdb.* TO 'forkuser'@'localhost';
A continuación, ejecuta el comando FLUSH PRIVILEGES para que MariaDB vuelva a cargar la tabla de privilegios:
MariaDB [(none)]> FLUSH PRIVILEGES;
Por último, sal del intérprete de comandos de MariaDB con el siguiente comando:
MariaDB [(none)]> EXIT;
Instalar Fork CMS
En primer lugar, tendrás que instalar el Compositor en tu sistema. Puedes instalarlo con el siguiente comando:
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
Obtendrás la siguiente salida:
All settings correct for using Composer Downloading... Composer (version 2.4.4) successfully installed to: /usr/local/bin/composer Use it: php /usr/local/bin/composer
A continuación, navega hasta el directorio raíz web de Apache y descarga el Fork CMS utilizando el Composer:
cd /var/www/html/ composer create-project forkcms/forkcms
A continuación, establece el permiso y la propiedad adecuados para el directorio FOrk CMS:
chown -R www-data:www-data /var/www/html/forkcms chmod -R 775 /var/www/html/forkcms
Una vez que hayas terminado, puedes continuar con el siguiente paso.
Crear un host virtual Apache para Fork CMS
A continuación, tendrás que crear un archivo de configuración de host virtual Apache para servir Fork CMS a través de Internet. Puedes crearlo con el siguiente comando:
nano /etc/apache2/sites-available/forkcms.conf
Añade las siguientes líneas:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/forkcms ServerName forkcms.example.com <Directory /var/www/html/forkcms/> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Guarda y cierra el archivo y, a continuación, activa el Fork CMS y habilita el módulo de reescritura de Apache con el siguiente comando:
a2ensite forkcms.conf a2enmod rewrite
A continuación, reinicia el servicio Apache para aplicar los cambios:
systemctl restart apache2
También puedes comprobar el estado del servicio Apache con el siguiente comando:
systemctl status apache2
Obtendrás la siguiente salida:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2022-12-13 05:35:24 UTC; 1s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 94668 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 94672 (apache2) Tasks: 6 (limit: 2238) Memory: 13.4M CPU: 45ms CGroup: /system.slice/apache2.service ??94672 /usr/sbin/apache2 -k start ??94673 /usr/sbin/apache2 -k start ??94674 /usr/sbin/apache2 -k start ??94675 /usr/sbin/apache2 -k start ??94676 /usr/sbin/apache2 -k start ??94677 /usr/sbin/apache2 -k start Dec 13 05:35:24 ubuntu2204 systemd[1]: apache2.service: Deactivated successfully. Dec 13 05:35:24 ubuntu2204 systemd[1]: Stopped The Apache HTTP Server. Dec 13 05:35:24 ubuntu2204 systemd[1]: Starting The Apache HTTP Server...
Una vez que hayas terminado, puedes continuar con el siguiente paso.
Accede a la Interfaz Web de Fork CMS
Ahora, abre tu navegador web y escribe la URL http://forkcms.example.com/install/2. Serás redirigido a la siguiente página:
Aquí, selecciona el idioma que desees y haz clic en el botón Siguiente. Deberías ver la siguiente página:
Selecciona el módulo que deseas instalar y pulsa el botón Siguiente. Deberías ver la página siguiente:
Proporciona los datos de tu base de datos y pulsa el botón Siguiente. Deberías ver la siguiente página:
Aquí, proporciona tu dirección de correo electrónico, nombre de usuario y contraseña de administrador, luego haz clic en el botón Finalizar la instalación. Deberías ver la siguiente página:
Ahora, haz clic en el botón Iniciar sesión en Fork CMS. Deberías ver la pantalla de inicio de sesión de Fork CMS en la siguiente página:
Ahora, proporciona tu nombre de usuario y contraseña de administrador, y haz clic en el botón Iniciar sesión. Serás redirigido al panel de control de Fork CMS como se muestra en la siguiente imagen:
Asegura ForkCMS con Let’s Encrypt SSL
Para instalar Let’s Encrypt SSL en el sitio web ForkCMS, necesitarás instalar el paquete certbot en tu servidor.
Primero, instala el gestor de paquetes Snap con el siguiente comando:
apt install snapd
A continuación, actualiza el paquete Snap a la última versión:
snap install core snap refresh core
A continuación, instala el paquete certbot con el siguiente comando:
snap install --classic certbot
A continuación, crea un enlace simbólico para el binario de Certbot en la ubicación del sistema:
ln -s /snap/bin/certbot /usr/bin/certbot
A continuación, ejecuta el siguiente comando para descargar e instalar los certificados SSL de Let’s Encrypt:
certbot --apache -d forkcms.example.com
Se te pedirá que proporciones tu dirección de correo electrónico y que aceptes las condiciones del servicio:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.3-September-21-2022.pdf. You must agree in order to register with the ACME server. Do you agree? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing, once your first certificate is successfully issued, to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y
Escribe Y y pulsa la tecla Intro para descargar e instalar los certificados SSL para tu dominio:
Account registered. Requesting a certificate for forkcms.example.com Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/forkcms.example.com/fullchain.pem Key is saved at: /etc/letsencrypt/live/forkcms.example.com/privkey.pem This certificate expires on 2023-02-28. These files will be updated when the certificate renews. Certbot has set up a scheduled task to automatically renew this certificate in the background. Deploying certificate Successfully deployed certificate for forkcms.example.com to /etc/nginx/conf.d/mastodon.conf Congratulations! You have successfully enabled HTTPS on https://forkcms.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - If you like Certbot, please consider supporting our work by: * Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate * Donating to EFF: https://eff.org/donate-le - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Conclusión
En este post, hemos explicado cómo instalar Fork CMS con Apache y Let’s Encrypt SSL en un servidor Ubuntu 22.04. Ahora puedes crear, supervisar y actualizar tu sitio web desde la intuitiva interfaz web de Fork CMS. No dudes en preguntarme si tienes alguna duda.