Cómo instalar MODX CMS y Nginx en CentOS 7

MODX es un sistema de gestión de contenido gratuito y de código abierto escrito en PHP. Utiliza MySQL o MariaDB para almacenar su base de datos. MODX está diseñado para el negocio en el que es crítico mantener un sitio web. Proporciona flexibilidad a los desarrolladores para crear un sitio web eligiendo su propio diseño y estructura. También cuenta con un WYSIWYGeditor para usuarios no técnicos en el negocio. Además de ser flexible, puede optimizarse para una velocidad increíblemente rápida.

Este tutorial fue escrito para MODX 2.6.1 y también puede funcionar para versiones más recientes.

Prerrequisitos

  • Una instancia de servidor Vultr CentOS 7.
  • Un usuario de sudo .
  • Un nombre de dominio apuntado hacia la instancia.

Para este tutorial, usaremos modx.example.comcomo el nombre de dominio que apunta hacia la instancia de Vultr. Asegúrese de reemplazar todas las apariciones del nombre de dominio de ejemplo con el nombre real.

Actualice su sistema base utilizando la guía Cómo actualizar CentOS 7 . Una vez que su sistema ha sido actualizado, proceda a instalar las dependencias.

Instalar Nginx

Nginx es un servidor web de producción para ejecutar aplicaciones web. Instala Nginx.

sudo yum -y install epel-release
sudo yum -y install nginx

Inicie Nginx y permita que se ejecute automáticamente en el momento del arranque.

sudo systemctl start nginx
sudo systemctl enable nginx

Instalar PHP 7.2

MODX admite todas las versiones de PHP anteriores a 5.4. Instalaremos la última versión disponible de PHP. El uso de PHP 7.2 garantizará la máxima velocidad y seguridad. Agregue y habilite el repositorio Remi ya que la versión 7.2 de PHP no está disponible en el YUMrepositorio predeterminado .

sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install yum-utils
sudo yum-config-manager --enable remi-php72

Instale PHP versión 7.2 junto con los módulos requeridos por MODX.

sudo yum -y install php php-zlib php-mysqli php-curl php-json php-cli php-pear php-gd php-openssl php-xml php-mbstring php-fpm ImageMagick

Edite el archivo de configuración PHP cargado.

sudo nano /etc/php.ini

Encuentra la siguiente línea. Descomente y configure la zona horaria adecuada.

date.timezone = Asia/Kolkata
;Replace "Asia/Kolkata" with your appropriate time zone

Además, establezca un límite de memoria apropiado en la siguiente línea. Si lo configura, -1le dará memoria ilimitada disponible a un script.

memory_limit = -1

Luego, busque la siguiente línea y establezca su valor en 0después de descomentarla.

cgi.fix_pathinfo=0

Guarde el archivo y abra el php-fpmarchivo de configuración.

sudo nano /etc/php-fpm.d/www.conf

Encuentre el existente listen = 127.0.0.1:9000, coméntelo y agregue una nueva línea como se muestra a continuación.

;listen = 127.0.0.1:9000
listen = /var/run/php-fpm/php-fpm.sock

Además, cambie los usuarios como se muestra a continuación.

listen.owner = nginx
listen.group = nginx

...

user = nginx
group = nginx

Guarde el archivo e inicie php-fpmy permita que se inicie automáticamente en el momento del arranque.

sudo systemctl restart php-fpm
sudo systemctl enable php-fpm

Proporcione permisos de escritura al directorio de la sesión.

sudo mkdir /var/lib/php/session
sudo chmod -R 777 /var/lib/php/session

Ahora, proceda a la instalación de MariaDB.

Instalar MariaDB

MariaDB es una bifurcación de MySQL. Agregue el repositorio MariaDB a su sistema. El YUMrepositorio predeterminado contiene una versión anterior de MariaDB.

echo "[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1" | sudo tee /etc/yum.repos.d/mariadb.repo

Instala MariaDB.

sudo yum -y install mariadb mariadb-server

Inicie MariaDB y permita que se inicie automáticamente en el momento del arranque.

sudo systemctl start mariadb
sudo systemctl enable mariadb

Antes de configurar la base de datos, deberá asegurar MariaDB.

sudo mysql_secure_installation

Se le pedirá la contraseña de root actual de MariaDB. Por defecto, no hay una contraseña de root en una nueva instalación de MariaDB. Presione la Entertecla " " para continuar. Establezca una contraseña segura para el rootusuario de su servidor MariaDB y responda " Y" a todas las demás preguntas que se le hagan. Las preguntas formuladas se explican por sí mismas.

Inicie sesión en el shell de MySQL como root.

mysql -u root -p

Proporcione la contraseña para que el usuario raíz de MariaDB inicie sesión.

Ejecute las siguientes consultas para crear una base de datos y un usuario de la base de datos para la instalación MODX.

CREATE DATABASE modx_data CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'modx_user'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON modx_data.* TO 'modx_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Puede reemplazar el nombre de la base de datos modx_datay el nombre de usuario de modx_useracuerdo con su elección. Asegúrese de cambiar StrongPassworda una contraseña muy segura .

Instalar MODX

Descargue el archivo zip MODX.

wget https://modx.com/download/direct?id=modx-2.6.1-pl.zip -O modx.zip

Siempre puede buscar el enlace a la última versión de la aplicación en la página de descarga de MODX .

Instalar descomprimir.

sudo yum -y install unzip

Extraiga el archivo en el directorio webroot de Nginx.

sudo unzip modx.zip -d /usr/share/nginx/

Cambiar el nombre del directorio.

cd /usr/share/nginx/
sudo mv modx-*/ modx/

Además, cambie el nombre del ht.accessarchivo a .htaccess.

sudo mv /usr/share/nginx/modx/ht.access /usr/share/nginx/modx/.htaccess

Cree un directorio de caché de sesión y proporcione la propiedad al usuario nginx.

sudo mkdir /usr/share/nginx/modx/core/cache
sudo chown nginx:nginx /usr/share/nginx/modx/core/cache

Finalmente, cree un archivo de configuración vacío y proporcione los permisos adecuados.

sudo touch /usr/share/nginx/modx/core/config/config.inc.php
sudo chown -R nginx:nginx /usr/share/nginx/

Permita el tráfico en los puertos 80y a 443través del firewall.

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload

Crear host virtual

Para alojar su sitio MODX, cree un nuevo host virtual.

sudo nano /etc/nginx/conf.d/modx.example.com.conf

Rellene el archivo.

server {
        listen 80;
        server_name modx.example.com;
        root /usr/share/nginx/modx;
        index index.php;
        client_max_body_size 30M;
        location / {
                root /usr/share/nginx/modx;
                if (!-e $request_filename) {
                        rewrite ^/(.*)$ /index.php?q=$1 last;
                }
        }
        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_split_path_info ^(.+\.php)(.*)$;
                fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include fastcgi_params;
                fastcgi_ignore_client_abort on;
                fastcgi_param  SERVER_NAME $http_host;
        }

        location ~ /\.ht {
                deny  all;
        }
}

Probar la configuración del servidor web Nginx.

sudo nginx -t

Verá el siguiente resultado.

[user@vultr nginx]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Si no ve errores en la configuración, reinicie Nginx para que la nueva configuración surta efecto.

sudo systemctl restart nginx

Terminando

Antes de poder acceder a la instalación, deberá completar la instalación a través del instalador web. Acceda a la instalación basada en web en http://modx.example.com/setup. Verá una interfaz para cambiar el idioma de instalación.

Elija el idioma según su preferencia y en la página siguiente, seleccione la New Installationopción " ". En la página siguiente, proporcione sus credenciales de base de datos MySQL o MariaDB y cree una nueva cuenta de administrador. Finalmente, haga clic en el botón " Install" y el instalador escribirá sus datos en la base de datos.

En este punto, ya está todo listo para crear su sitio web desde el tablero administrativo.



Cómo instalar Thelia 2.3 en CentOS 7

Cómo instalar Thelia 2.3 en CentOS 7

¿Usando un sistema diferente? Thelia es una herramienta de código abierto para crear sitios web de comercio electrónico y administrar contenido en línea, escrito en PHP. Código fuente de Thelia i

Instalación de Fuel CMS en Ubuntu 16.04 LTS

Instalación de Fuel CMS en Ubuntu 16.04 LTS

¿Usando un sistema diferente? Fuel CMS es un sistema de gestión de contenido basado en CodeIgniter. Su código fuente está alojado en GitHub. Esta guía le mostrará cómo t

Cómo instalar Couch CMS 2.0 en un VPS LAMP Debian 9

Cómo instalar Couch CMS 2.0 en un VPS LAMP Debian 9

¿Usando un sistema diferente? Couch CMS es un sistema de gestión de contenido (CMS) simple y flexible, gratuito y de código abierto que permite a los diseñadores web diseñar

How to Install Alfresco Community Edition on Ubuntu 16.04

How to Install Alfresco Community Edition on Ubuntu 16.04

Using a Different System? Alfresco Community Edition is an open source version of the Alfresco Content Services. It is written in Java and uses PostgreSQL t

How to Install WonderCMS on Fedora 29

How to Install WonderCMS on Fedora 29

Using a Different System? WonderCMS is an open source, fast and small flat file CMS written in PHP. WonderCMS source code is hosted on Github. This guide wil

How to Install Redaxscript 3.2 CMS on an Ubuntu 16.04 LAMP VPS

How to Install Redaxscript 3.2 CMS on an Ubuntu 16.04 LAMP VPS

Using a Different System? Redaxscript 3.2 CMS is a modern and ultra lightweight, free and open source Content Management System (CMS) with rocket-fas

How to Install Neos CMS on Debian 9

How to Install Neos CMS on Debian 9

Using a Different System? Neos is a Content Application Platform with a CMS and an application framework at its core. This guide will show you how to instal

Cómo instalar el CMS de octubre 1.0 en un VPS LAMP Fedora 26

Cómo instalar el CMS de octubre 1.0 en un VPS LAMP Fedora 26

¿Usando un sistema diferente? October 1.0 CMS es un sistema de gestión de contenido (CMS) simple y confiable, gratuito y de código abierto creado en el marco de Laravel

Cómo instalar Directus 6.4 CMS en un CentOS 7 LAMP VPS

Cómo instalar Directus 6.4 CMS en un CentOS 7 LAMP VPS

¿Usando un sistema diferente? Directus 6.4 CMS es un sistema de gestión de contenido sin cabeza (CMS) potente y flexible, gratuito y de código abierto que proporciona al desarrollador

How to Install BoltWire CMS on CentOS 7

How to Install BoltWire CMS on CentOS 7

Using a Different System? Introduction BoltWire is a free and lightweight content management system written in PHP. Compared to most other content managemen

Instalación de Bolt CMS en CentOS 7

Instalación de Bolt CMS en CentOS 7

Bolt es un CMS de código abierto escrito en PHP. El código fuente de Bolts está alojado en GitHub. Esta guía le mostrará cómo instalar Bolt CMS en un nuevo CentOS 7 Vult

How to Install Redaxscript 3.2 CMS on a Fedora 26 LAMP VPS

How to Install Redaxscript 3.2 CMS on a Fedora 26 LAMP VPS

Using a Different System? Redaxscript 3.2 CMS is a modern and ultra lightweight, free and open source Content Management System (CMS) with rocket-fas

Instalación de Anchor CMS en CentOS 7

Instalación de Anchor CMS en CentOS 7

¿Usando un sistema diferente? Anchor es un blog ligero de código abierto CMS escrito en PHP. El código fuente de Anchors está alojado en GitHub. Esta guía te mostrará ho

Cómo instalar Couch CMS 2.0 en un CentOS 7 LAMP VPS

Cómo instalar Couch CMS 2.0 en un CentOS 7 LAMP VPS

¿Usando un sistema diferente? Couch CMS es un sistema de gestión de contenido (CMS) simple y flexible, gratuito y de código abierto que permite a los diseñadores web diseñar

Installing Microweber on Ubuntu 16.04

Installing Microweber on Ubuntu 16.04

Using a Different System? Microweber is an open source drag and drop CMS and online shop. Microweber source code is hosted on GitHub. This guide will show yo

Installing Fork CMS on FreeBSD 12

Installing Fork CMS on FreeBSD 12

Using a Different System? Fork is an open source CMS written in PHP. Forks source code is hosted on GitHub. This guide will show you how to install Fork CM

Cómo instalar ImpressPages CMS 5.0 en un Fedora 26 LAMP VPS

Cómo instalar ImpressPages CMS 5.0 en un Fedora 26 LAMP VPS

¿Usando un sistema diferente? ImpressPages CMS 5.0 es un sistema de gestión de contenido (CMS) simple y efectivo, gratuito y de código abierto, fácil de usar y basado en MVC

Cómo instalar Pagekit 1.0 CMS en un Fedora 26 LAMP VPS

Cómo instalar Pagekit 1.0 CMS en un Fedora 26 LAMP VPS

¿Usando un sistema diferente? Pagekit 1.0 CMS es un sistema de administración de contenido (CMS) hermoso, modular, extensible y liviano, gratuito y de código abierto con

Cómo instalar ProcessWire CMS 3.0 en un Fedora 26 LAMP VPS

Cómo instalar ProcessWire CMS 3.0 en un Fedora 26 LAMP VPS

¿Usando un sistema diferente? ProcessWire CMS 3.0 es un sistema de gestión de contenido (CMS) simple, flexible y potente, gratuito y de código abierto. ProcessWire CMS 3.

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

Los ataques de ransomware van en aumento, pero ¿puede la IA ayudar a lidiar con el último virus informático? ¿Es la IA la respuesta? Lea aquí, sepa que la IA es una bendición o una perdición

ReactOS: ¿Es este el futuro de Windows?

ReactOS: ¿Es este el futuro de Windows?

ReactOS, un sistema operativo de código abierto y gratuito, está aquí con la última versión. ¿Puede satisfacer las necesidades de los usuarios de Windows de hoy en día y acabar con Microsoft? Averigüemos más sobre este estilo antiguo, pero una experiencia de sistema operativo más nueva.

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Whatsapp finalmente lanzó la aplicación de escritorio para usuarios de Mac y Windows. Ahora puede acceder a Whatsapp desde Windows o Mac fácilmente. Disponible para Windows 8+ y Mac OS 10.9+

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

Lea esto para saber cómo la Inteligencia Artificial se está volviendo popular entre las empresas de pequeña escala y cómo está aumentando las probabilidades de hacerlas crecer y dar ventaja a sus competidores.

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

Recientemente, Apple lanzó macOS Catalina 10.15.4, una actualización complementaria para solucionar problemas, pero parece que la actualización está causando más problemas que conducen al bloqueo de las máquinas Mac. Lee este artículo para obtener más información

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

¿Qué es un sistema de archivos de diario y cómo funciona?

¿Qué es un sistema de archivos de diario y cómo funciona?

Nuestra computadora almacena todos los datos de una manera organizada conocida como sistema de archivos de diario. Es un método eficiente que permite a la computadora buscar y mostrar archivos tan pronto como presiona buscar.

Singularidad tecnológica: ¿un futuro lejano de la civilización humana?

Singularidad tecnológica: ¿un futuro lejano de la civilización humana?

A medida que la ciencia evoluciona a un ritmo rápido, asumiendo muchos de nuestros esfuerzos, también aumentan los riesgos de someternos a una singularidad inexplicable. Lea, lo que la singularidad podría significar para nosotros.

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

El impacto de la inteligencia artificial en la atención médica 2021

El impacto de la inteligencia artificial en la atención médica 2021

La IA en la salud ha dado grandes pasos desde las últimas décadas. Por tanto, el futuro de la IA en el sector sanitario sigue creciendo día a día.