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:

Inicio de sesión de Neos

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:

Comprobación de los requisitos de Neos

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:

Configurar la base de datos de Neos

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:

Crear una cuenta de administrador

Ahora, proporciona los datos de tu cuenta de administrador y haz clic en el botón Siguiente. Deberías ver la siguiente página:

Crear un nuevo sitio en Neos

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:

Configuración de Neos completa

Ahora, haz clic en el botón Ir al backend. Serás redirigido a la página de inicio de sesión de Neos:

Acceder a 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:

Bienvenido a Neos

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.

También te podría gustar...