Cómo instalar NEOS CMS en Ubuntu 18.04 LTS
Neos es un moderno sistema de gestión de contenidos gratuito y de código abierto que puede utilizarse para construir y gestionar sitios web fácilmente. Se basa en su propio framework PHP que te permite construir una experiencia perfectamente personalizada. Neos CMS no es sólo un CMS, sino una plataforma de aplicación de contenidos y personalización según las necesidades de tu empresa. Neos te permite editar el contenido por ti mismo directamente en el navegador.
En este tutorial, explicaremos cómo instalar Neos en el servidor Ubuntu 18.04.
Requisitos
- Un servidor con Ubuntu 18.04.
- Una contraseña de root en tu servidor.
Cómo empezar
Antes de empezar, tendrás que actualizar tu sistema con la última versión. Puedes hacerlo ejecutando el siguiente comando:
apt-get update -y
apt-get upgrade -y
Una vez que tu servidor esté actualizado, reinicia tu servidor para aplicar los cambios.
Instalar el servidor LAMP
En primer lugar, tendrás que instalar en tu sistema el servidor web Apache, el servidor de bases de datos MariaDB, PHP y otros paquetes necesarios. Puedes instalarlos todos ejecutando el siguiente comando:
apt-get install apache2 mariadb-server php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mysql php7.2-gmp php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-gd php7.2-bcmath php7.2-xml php7.2-cli php7.2-zip curl unzip git -y
Una vez instalados todos los paquetes, inicia el servicio de Apache y MariaDB y haz que se inicien al arrancar con el siguiente comando:
systemctl start apache2
systemctl start mariadb
systemctl enable apache2
systemctl enable mariadb
A continuación, tendrás que cambiar el archivo php.ini como se muestra a continuación:
nano /etc/php/7.2/apache2/php.ini
Cambia las siguientes líneas:
short_open_tag = On memory_limit = 256M upload_max_filesize = 150M max_execution_time = 360 date.timezone = Asia/Kolkata
Guarda y cierra el archivo, cuando hayas terminado.
Configurar la base de datos MariaDB
Por defecto, MariaDB no está asegurada, por lo que tendrás que asegurarla primero. Puedes asegurarla ejecutando el siguiente comando:
mysql_secure_installation
Responde a todas las preguntas como se muestra a continuación:
Enter current password for root (enter for none): 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
Una vez que MariaDB esté asegurada, entra en el shell de MariaDB con el siguiente comando:
mysql -u root -p
Introduce tu contraseña de root cuando se te pida. A continuación, crea una base de datos y un usuario para Neos con el siguiente comando
MariaDB [(none)]> CREATE DATABASE neosdb;
MariaDB [(none)]> CREATE USER 'neos'@'localhost' IDENTIFIED BY 'mypassword';
sustituye la palabra «mypassword» por una contraseña segura de tu elección en el comando anterior y en el siguiente, utiliza la misma contraseña las dos veces. A continuación, concede todos los privilegios a la base de datos de Neos con el siguiente comando:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON neosdb.* TO 'neos'@'localhost' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
A continuación, cambia el juego de caracteres de tu base de datos a utf8 con el siguiente comando:
MariaDB [(none)]> ALTER DATABASE neosdb charset=utf8;
A continuación, vacía los privilegios y sal del shell de MariaDB con el siguiente comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
A continuación, tendrás que hacer algunos cambios en el archivo de configuración por defecto de MariaDB. Puedes hacerlo con el siguiente comando:
nano /etc/myql/mariadb.conf.d/50-server.cnf
Añade las siguientes líneas:
innodb_file_format = Barracuda innodb_large_prefix = 1 innodb_file_per_table = 1 innodb_default_row_format = dynamic
Guarda y cierra el archivo. A continuación, reinicia el servicio de MariaDB con el siguiente comando
systemctl restart mariadb
Puedes comprobar el estado del servidor MariaDB con el siguiente comando:
systemctl status mariadb
Deberías ver la siguiente salida:
? mariadb.service - MariaDB 10.1.38 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2019-04-16 07:31:40 UTC; 7h ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Process: 1239 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 1235 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS) Process: 937 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ] && systemc Process: 927 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 844 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS) Main PID: 1092 (mysqld) Status: "Taking your SQL requests now..." Tasks: 46 (limit: 1113) CGroup: /system.slice/mariadb.service ??1092 /usr/sbin/mysqld Apr 16 07:31:19 ubuntu1804 systemd[1]: Starting MariaDB 10.1.38 database server... Apr 16 07:31:32 ubuntu1804 mysqld[1092]: 2019-04-16 7:31:32 140002947079296 [Note] /usr/sbin/mysqld (mysqld 10.1.38-MariaDB-0ubuntu0.18.04.1) Apr 16 07:31:40 ubuntu1804 systemd[1]: Started MariaDB 10.1.38 database server. Apr 16 07:31:40 ubuntu1804 /etc/mysql/debian-start[1240]: Upgrading MySQL tables if necessary. Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1244]: /usr/bin/mysql_upgrade: the '--basedir' option is always ignored Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1244]: Looking for 'mysql' as: /usr/bin/mysql Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1244]: Looking for 'mysqlcheck' as: /usr/bin/mysqlcheck Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1244]: This installation of MySQL is already upgraded to 10.1.38-MariaDB, use --force if you Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1294]: Checking for insecure root accounts. Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1304]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables
Una vez que hayas terminado, puedes pasar al siguiente paso.
Instalar Neos CMS
Antes de instalar Neos, tendrás que instalar Composer en tu sistema. Puedes instalarlo ejecutando el siguiente comando:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
A continuación, cambia el directorio a la raíz web de Apache e instala Neos CMS con el siguiente comando:
cd /var/www/html/
composer create-project --no-dev neos/neos-base-distribution neoscms
A continuación, cambia el permiso de neoscms con el siguiente comando:
chown -R www-data:www-data /var/www/html/neoscms/
chmod -R 755 /var/www/html/neoscms/
Una vez que hayas terminado, puedes pasar al siguiente paso.
Configurar Apache para NeosCMS
A continuación, tendrás que crear un archivo de host virtual de Apache para Neos. Puedes hacerlo con el siguiente comando:
nano /etc/apache2/sites-available/neoscms.conf
Añade las siguientes líneas:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/neoscms/Web ServerName example.com <Directory /var/www/html/neoscms/Web/> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/neos_error.log CustomLog ${APACHE_LOG_DIR}/neos_access.log combined <Directory /var/www/html/neoscms/Web/> RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*) index.php [PT,L] </Directory> </VirtualHost>
Guarda y cierra el archivo, cuando hayas terminado. A continuación, habilita el host virtual de Neos y el módulo de reescritura de Apache con el siguiente comando
a2ensite neoscms.conf
a2enmod rewrite
Por último, reinicia el servicio de Apache para aplicar todos los cambios con el siguiente comando:
systemctl restart apache2
Puedes comprobar el estado de Apache con el siguiente comando:
systemctl status apache2
Deberías ver la siguiente salida:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Drop-In: /lib/systemd/system/apache2.service.d ??apache2-systemd.conf Active: active (running) since Tue 2019-04-16 14:57:32 UTC; 3s ago Process: 2358 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 2372 (apache2) Tasks: 6 (limit: 1113) CGroup: /system.slice/apache2.service ??2372 /usr/sbin/apache2 -k start ??2375 /usr/sbin/apache2 -k start ??2377 /usr/sbin/apache2 -k start ??2378 /usr/sbin/apache2 -k start ??2381 /usr/sbin/apache2 -k start ??2382 /usr/sbin/apache2 -k start Apr 16 14:57:31 ubuntu1804 systemd[1]: Starting The Apache HTTP Server... Apr 16 14:57:32 ubuntu1804 apachectl[2358]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 192. Apr 16 14:57:32 ubuntu1804 systemd[1]: Started The Apache HTTP Server.
Una vez que hayas terminado, puedes pasar al siguiente paso.
Accede a la interfaz web de Neos
Ahora, abre tu navegador web y escribe la URL http://example.com/setup. Serás redirigido a la siguiente página:
A continuación, introduce la contraseña de configuración del archivo /var/www/html/neoscms/Data/SetupPassword.txt y haz clic en el botón Iniciar sesión. Deberías ver la siguiente página:
Asegúrate de que todos los paquetes necesarios están instalados. A continuación, haz clic en el botón Siguiente. Deberías ver la siguiente página:
Ahora, proporciona el nombre de tu base de datos, el nombre de usuario de la base de datos y la contraseña. A continuación, haz clic en el botón Siguiente. Deberías ver la siguiente página:
Ahora, proporciona los datos de tu cuenta de administrador y haz clic en el botón Siguiente. Deberías ver la siguiente página:
Ahora, haz clic en el botón Omitir. Una vez que la instalación se haya completado con éxito, deberías ver la siguiente página:
Ahora, haz clic en el botón Ir al backend. Serás redirigido a la página de inicio de sesión de Neos:
Ahora, proporciona tu nombre de usuario y contraseña de administrador. A continuación, haz clic en el botón Iniciar sesión. Deberías ver la siguiente página:
Conclusión
Enhorabuena! has instalado con éxito Neos CMS en el servidor Ubuntu 18.04. Ahora puedes alojar fácilmente tu propio sitio web o blog utilizando Neos. No dudes en preguntarme si tienes alguna duda.