Cómo instalar Anchor CMS en CentOS 7

Anchor es un ligero CMS de código abierto para blogs escrito en PHP. El código fuente de Anchor está alojado en GitHub. Este tutorial te mostrará cómo instalar Anchor CMS en un sistema CentOS 7.

Requisitos

Asegúrate de que tu servidor cumple los siguientes requisitos

  • MySQL 5.6 o superior (se recomienda MySQL 5.7)
  • PHP 5.6 o superior con las siguientes extensiones PHP: (curlmcrypt,gd,mbstring,pdo_mysql o pdo_sqlite)
  • Apache o Nginx. En este tutorial utilizaremos Nginx.

Requisitos previos

  • Sistema operativo CentOS 7.
  • Un usuario no root con privilegios sudo.

Pasos iniciales

Comprueba la versión de tu sistema CentOS:

cat /etc/centos-release
# CentOS Linux release 7.5.1804 (Core)

Configura la zona horaria:

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Actualiza los paquetes de tu sistema operativo:

sudo yum update -y

Instala algunos paquetes útiles si no están ya instalados:

sudo yum install -y vim wget curl git unzip bash-completion

Paso 1 – Instalar PHP y las extensiones PHP necesarias

Anchor CMS requiere la versión 5.6 o superior de PHP. Los repositorios predeterminados de CentOS contienen una versión antigua de PHP, por lo que tendremos que instalar un repositorio de terceros para instalar una versión más reciente de PHP. Utilizaremos el repositorio Webtatic.

Configura el repositorio YUM de Webtatic:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Instala PHP, así como las extensiones PHP necesarias:

sudo yum install -y php72w php72w-cli php72w-fpm php72w-common php72w-mbstring php72w-curl php72w-mysql php72w-sqlite3 php72w-gd php72w-mcrypt php72w-dom

Comprueba la versión de PHP:

php --version
# PHP 7.2.12 (cli) (built: Nov 11 2018 14:54:16) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Inicia y activa el servicio PHP-FPM:

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Paso 2 – Instalar MariaDB y crear una base de datos para Anchor CMS

Anchor admite bases de datos MySQL/MariaDB y SQLite. El repositorio CentOS por defecto contiene una versión no compatible de MariaDB. Por ello, utilizaremos el repositorio oficial de MariaDB que contiene una versión más reciente de MariaDB.

Crea el repositorio YUM de MariaDB para CentOS:

sudo vim /etc/yum.repos.d/MariaDB.repo

Copia y pega el siguiente texto en él:

# MariaDB 10.2 CentOS repository list - created 2017-12-11 23:19 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name=MariaDB
baseurl=https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Una vez colocado el archivo, instala MariaDB ejecutando:

sudo yum install -y MariaDB-server MariaDB-client

Comprueba la versión de MariaDB:

mysql --version
# mysql  Ver 15.1 Distrib 10.2.19-MariaDB, for Linux (x86_64) using readline 5.1

Inicia y habilita el servicio MariaDB:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Ejecuta el script mysql_secure installation para mejorar la seguridad de MariaDB y establece la contraseña del usuario de MariaDBroot:

sudo mysql_secure_installation

Responde a todas las preguntas como se indica a continuación:

Enter current password for root (enter for none):
Set root password? [Y/n]: Y
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

Accede al shell de MariaDB como usuario root:

mysql -u root -p
# Enter password

Crea una base de datos MariaDB y un usuario que utilizarás para la instalación de Anchor CMS, y recuerda las credenciales:

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

Sal del intérprete de comandos MariaDB:

quit

Paso 3 – Instalar y configurar Nginx

Instala el servidor web Nginx:

sudo yum install -y nginx

Comprueba la versión de Nginx:

nginx -v
# nginx version: nginx/1.12.2

Inicia y habilita el servicio Nginx:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Ejecut a sudo vim /etc/nginx/conf.d/anchor.confy rellena el archivo con la siguiente configuración:

server {
    listen 80;

    server_name example.com;
    root /var/www/anchor;

    index index.php index.html;

    location / {
        try_files $uri $uri/ /index.php;
    }
    
    location ~ \.php$ {
        try_files $uri =404;
        include fastcgi_params;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

}

Prueba la configuración de Nginx:

sudo nginx -t

Recarga Nginx:

sudo systemctl reload nginx.service

Paso 4 – Descarga e instala Composer

Para instalar correctamente Anchor, necesitaremos instalar Composer, el gestor de dependencias para aplicaciones PHP:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

php composer-setup.php

php -r "unlink('composer-setup.php');"

sudo mv composer.phar /usr/local/bin/composer

Comprueba la versión de Composer.

composer --version
# Composer version 1.8.0 2018-12-03 10:31:16

Paso 5 – Descargar e instalar Anchor CMS

Crea un directorio raíz de documentos:

sudo mkdir -p /var/www/anchor

Cambia la propiedad del directorio/var/www/limesurvey a [jour_user].:

sudo chown -R [your_user]:[your_user] /var/www/anchor

Navega hasta la raíz del documento:

cd /var/www/anchor

Descarga la última versión de Anchor CMS utilizando Composer:

composer create-project anchorcms/anchor-cms .

Cambia la propiedad del directorio/var/www/anchor a nginx:

sudo chown -R nginx:nginx /var/www/anchor

Crea el directorio/var/lib/php/session y establece la propiedad en nginx.

sudo mkdir -p /var/lib/php/session && sudo chown -R nginx:nginx /var/lib/php

Ejecuta sudo vim /etc/php-fpm.d/www.conf y establece el usuario y el grupo en nginx. Inicialmente, estarán configurados como apache:

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Reinicia el servicio PHP-FPM:

sudo systemctl restart php-fpm.service

Paso 6 – Completa la configuración de Anchor CMS

Abre tu navegador web y escribe la URL «http://example.com». Serás redirigido a la siguiente página:

Instalador web de Anchor CMS

Haz clic en el botón«Ejecutar el instalador», para iniciar el instalador web de Anchor CMS. Después, debería aparecer la página de idioma y zona horaria:

Selecciona el idioma y la zona horaria

Selecciona la configuración que desees y haz clic en el botón «Paso siguiente » para pasar a la página de configuración de la base de datos:

Configuración de la base de datos

Introduce los detalles de tu base de datos y haz clic en el botón« Paso siguiente» para pasar a la página de configuración de los metadatos del sitio:

Metadatos del sitio

Aquí puedes establecer el nombre o la descripción del sitio, o dejar los valores predeterminados y cambiarlos más tarde a través de la interfaz de Anchor backend. Haz clic en el botón« Paso siguiente» para el siguiente paso, que es configurar tu primera cuenta:

Crear cuenta de administrador

Después de configurar tu primera cuenta, haz clic en el botón «Completar » para finalizar el proceso de instalación.

Una vez completada la instalación, asegúrate de borrar la carpetainstall por motivos de seguridad.

sudo rm -rf /var/www/anchor/install

Enlaces

También te podría gustar...