Cómo instalar Anchor CMS en CentOS 7
Anchor es un blog CMS ligero de código abierto escrito en PHP. El código fuente de Anchor está alojado en GitHub. Este tutorial le mostrará cómo instalar Anchor CMS en un sistema CentOS 7.
Requisitos
Asegúrese de que su servidor cumpla con los siguientes requisitos.
- MySQL 5.6 o superior (se recomienda MySQL 5.7)
- PHP 5.6 o superior con las siguientes extensiones de PHP: (curl, mcrypt, gd, mbstring, pdo_mysql o pdo_sqlite)
- Apache o Nginx. En este tutorial usaremos Nginx.
- Sistema operativo CentOS 7.
- Un usuario no root con privilegios sudo.
Pasos iniciales
Verifique la versión de su sistema CentOS:
cat /etc/centos-release # CentOS Linux release 7.5.1804 (Core)
Configurar la zona horaria:
timedatectl list-timezones sudo timedatectl set-timezone 'Region/City'
Actualice los paquetes de su sistema operativo:
sudo yum update -y
Instale algunos paquetes útiles si aún no están instalados:
sudo yum install -y vim wget curl git unzip bash-completion
Paso 1: instale PHP y las extensiones de PHP necesarias
Anchor CMS requiere PHP versión 5.6 o superior. Los repositorios predeterminados de CentOS contienen una versión anterior de PHP y, por lo tanto, necesitaremos configurar un repositorio de terceros para instalar una versión más nueva de PHP. Usaremos el repositorio Webtatic.
Configure el repositorio Webtatic YUM:
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Instale PHP, así como las extensiones de 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
Compruebe 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
Inicie y habilite el servicio PHP-FPM:
sudo systemctl start php-fpm.service sudo systemctl enable php-fpm.service
Paso 2: instale MariaDB y cree una base de datos para Anchor CMS
Anchor admite bases de datos MySQL/MariaDB y SQLite. El repositorio predeterminado de CentOS contiene una versión no compatible de MariaDB. Por eso, utilizaremos el repositorio oficial de MariaDB que contiene una versión más reciente de MariaDB.
Cree el repositorio MariaDB YUM para CentOS:
sudo vim /etc/yum.repos.d/MariaDB.repo
Copie y pegue 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 que el archivo esté en su lugar, instale MariaDB ejecutando:
sudo yum install -y MariaDB-server MariaDB-client
Compruebe la versión de MariaDB:
mysql --version # mysql Ver 15.1 Distrib 10.2.19-MariaDB, for Linux (x86_64) using readline 5.1
Inicie y habilite el servicio MariaDB:
sudo systemctl start mariadb.service sudo systemctl enable mariadb.service
Ejecute el script de instalación mysql_secure para mejorar la seguridad de MariaDB y establezca la contraseña para el usuario root de MariaDB:
sudo mysql_secure_installation
Responda todas las preguntas como se muestra 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
Inicie sesión en el shell de MariaDB como usuario raíz:
mysql -u root -p # Enter password
Cree una base de datos MariaDB y un usuario que usará para su instalación de Anchor CMS, y recuerde las credenciales:
CREATE DATABASE dbname; GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password'; FLUSH PRIVILEGES;
Salga del shell de MariaDB:
quit
Paso 3: instalar y configurar Nginx
Instale el servidor web Nginx:
sudo yum install -y nginx
Compruebe la versión de Nginx:
nginx -v # nginx version: nginx/1.12.2
Inicie y habilite el servicio Nginx:
sudo systemctl start nginx.service sudo systemctl enable nginx.service
Ejecute sudo vim /etc/nginx/conf.d/anchor.conf y complete 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; } }
Pruebe la configuración de Nginx:
sudo nginx -t
Recargar Nginx:
sudo systemctl reload nginx.service
Paso 4 – Descarga e instala Composer
Para instalar Anchor con éxito, necesitaremos instalar Composer, el administrador 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
Compruebe la versión de Composer.
composer --version # Composer version 1.8.0 2018-12-03 10:31:16
Paso 5: descarga e instala Anchor CMS
Cree un directorio raíz de documentos:
sudo mkdir -p /var/www/anchor
Cambie la propiedad del directorio /var/www/limesurvey a [jour_user]:
sudo chown -R [your_user]:[your_user] /var/www/anchor
Navegue a la raíz del documento:
cd /var/www/anchor
Descargue la última versión de Anchor CMS usando Composer:
composer create-project anchorcms/anchor-cms .
Cambie la propiedad del directorio /var/www/anchor a nginx:
sudo chown -R nginx:nginx /var/www/anchor
Cree el directorio/var/lib/php/session y establezca la propiedad en nginx.
sudo mkdir -p /var/lib/php/session && sudo chown -R nginx:nginx /var/lib/php
Ejecute sudo vim /etc/php-fpm.d/www.conf y configure el usuario y el grupo en nginx. Inicialmente, se establecerán en apache:
sudo vim /etc/php-fpm.d/www.conf # user = nginx # group = nginx
Reinicie el servicio PHP-FPM:
sudo systemctl restart php-fpm.service
Paso 6: complete la configuración de Anchor CMS
Abra su navegador web y escriba la URL «http://ejemplo.com». Será redirigido a la siguiente página:
Haga clic en el «Ejecute el instalador» para iniciar el instalador web de Anchor CMS. Después, debería aparecer la página de idioma y zona horaria:
Seleccione la configuración que desee y haga clic en «Próximo paso» para pasar a la página de configuración de la base de datos:
Ingrese los detalles de su base de datos y haga clic en «Próximo paso» para pasar a la página de configuración de metadatos del sitio:
Puede establecer el nombre del sitio o la descripción del sitio aquí, o dejar los valores predeterminados y cambiarlos más tarde a través de la interfaz de back-end de Anchor. Haga clic en el «Próximo paso» botón para el siguiente paso que es configurar su primera cuenta:
Después de configurar su primera cuenta, haga clic en «Completo» botón para finalizar el proceso de instalación.
Una vez que haya completado la instalación, asegúrese de eliminar la carpeta de instalación por motivos de seguridad.
sudo rm -rf /var/www/anchor/install