Como instalar o MODX CMS e Nginx no CentOS 7

MODX é um sistema de gerenciamento de conteúdo gratuito e de código aberto escrito em PHP. Ele usa MySQL ou MariaDB para armazenar seu banco de dados. O MODX foi desenvolvido para os negócios em que a manutenção de um site é fundamental. Ele fornece flexibilidade aos desenvolvedores para criar um site, escolhendo seu próprio design e estrutura. Ele também possui um WYSIWYGeditor para usuários não técnicos no negócio. Além de flexível, pode ser otimizado para uma velocidade incrivelmente rápida.

Este tutorial foi escrito para o MODX 2.6.1 e também pode funcionar para versões mais recentes.

Pré-requisitos

  • Uma instância do servidor Vultr CentOS 7.
  • Um usuário sudo .
  • Um nome de domínio apontado para a instância.

Neste tutorial, usaremos modx.example.comcomo o nome de domínio apontado para a instância do Vultr. Certifique-se de substituir todas as ocorrências do nome de domínio de exemplo pelo nome real.

Atualize seu sistema básico usando o guia Como atualizar o CentOS 7 . Depois que seu sistema for atualizado, continue com a instalação das dependências.

Instale o Nginx

O Nginx é um servidor da Web de produção para executar aplicativos da Web. Instale o Nginx.

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

Inicie o Nginx e permita que ele seja executado automaticamente no momento da inicialização.

sudo systemctl start nginx
sudo systemctl enable nginx

Instale o PHP 7.2

O MODX suporta todas as versões do PHP acima da 5.4. Vamos instalar a versão mais recente disponível do PHP. O uso do PHP 7.2 garantirá velocidade e segurança máximas. Inclua e ative o repositório Remi, pois a versão 7.2 do PHP não está disponível no YUMrepositório padrão .

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 o PHP versão 7.2 junto com os módulos requeridos pelo 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 o arquivo de configuração PHP carregado.

sudo nano /etc/php.ini

Encontre a seguinte linha. Remova o comentário e defina o fuso horário apropriado.

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

Além disso, defina um limite de memória apropriado na seguinte linha. A configuração para -1fornecerá memória ilimitada disponível para um script.

memory_limit = -1

Em seguida, encontre a seguinte linha e defina seu valor para 0depois de descomentá-la.

cgi.fix_pathinfo=0

Salve o arquivo e abra o php-fpmarquivo de configuração.

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

Encontre o existente listen = 127.0.0.1:9000, comente e anexe uma nova linha, como mostrado abaixo.

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

Além disso, altere os usuários como mostrado abaixo.

listen.owner = nginx
listen.group = nginx

...

user = nginx
group = nginx

Salve o arquivo e inicie php-fpme ative-o automaticamente no momento da inicialização.

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

Forneça permissões de gravação para o diretório da sessão.

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

Agora, continue com a instalação do MariaDB.

Instale o MariaDB

MariaDB é um fork do MySQL. Adicione o repositório MariaDB ao seu sistema. O YUMrepositório padrão contém uma versão mais antiga do 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

Instale o MariaDB.

sudo yum -y install mariadb mariadb-server

Inicie o MariaDB e ative-o automaticamente no momento da inicialização.

sudo systemctl start mariadb
sudo systemctl enable mariadb

Antes de configurar o banco de dados, você precisará proteger o MariaDB.

sudo mysql_secure_installation

Você será solicitado a senha de root atual do MariaDB. Por padrão, não há senha de root em uma instalação nova do MariaDB. Pressione a tecla " Enter" para continuar. Defina uma senha forte para o rootusuário do servidor MariaDB e responda " Y" a todas as outras perguntas feitas. As perguntas feitas são auto-explicativas.

Entre no shell do MySQL como root.

mysql -u root -p

Forneça a senha para o usuário root do MariaDB efetuar login.

Execute as seguintes consultas para criar um banco de dados e um usuário de banco de dados para a instalação do 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;

Você pode substituir o nome do banco de dados modx_datae o nome de usuário de modx_useracordo com sua escolha. Certifique-se de alterar StrongPasswordpara uma senha muito forte.

Instale o MODX

Faça o download do arquivo zip MODX.

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

Você sempre pode procurar o link para a versão mais recente do aplicativo na página de download do MODX .

Instale descompacte.

sudo yum -y install unzip

Extraia o arquivo morto para o diretório webroot do Nginx.

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

Mude o nome do diretório.

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

Além disso, renomeie o ht.accessarquivo para .htaccess.

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

Crie um diretório de cache de sessão e forneça propriedade ao usuário nginx.

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

Por fim, crie um arquivo de configuração vazio e forneça as permissões apropriadas.

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

Permitir tráfego nas portas 80e 443através do firewall.

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

Criar host virtual

Para hospedar seu site MODX, crie um novo host virtual.

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

Preencher o arquivo.

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;
        }
}

Teste a configuração do servidor web Nginx.

sudo nginx -t

Você verá a seguinte saída.

[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

Se você não encontrar erros na configuração, reinicie o Nginx para que a nova configuração possa entrar em vigor.

sudo systemctl restart nginx

Empacotando

Antes de poder acessar a instalação, você precisará concluir a instalação pelo instalador da web. Acesse a instalação baseada na Web em http://modx.example.com/setup. Você verá uma interface para alterar o idioma da instalação.

Escolha o idioma de acordo com sua preferência e, na página seguinte, selecione a New Installationopção " ". Na página seguinte, forneça suas credenciais do banco de dados MySQL ou MariaDB e crie uma nova conta de administrador. Por fim, clique no botão " Install" e o instalador gravará seus dados no banco de dados.

Neste ponto, você está pronto para criar seu site a partir do painel administrativo.



Leave a Comment

Instalando o Fuel CMS no Ubuntu 16.04 LTS

Instalando o Fuel CMS no Ubuntu 16.04 LTS

Usando um sistema diferente? O Fuel CMS é um sistema de gerenciamento de conteúdo baseado em CodeIgniter. Seu código fonte está hospedado no GitHub. Este guia mostra como você pode

Como instalar o Couch CMS 2.0 em um VPS Debian 9 LAMP

Como instalar o Couch CMS 2.0 em um VPS Debian 9 LAMP

Usando um sistema diferente? O Couch CMS é um sistema de gerenciamento de conteúdo (CMS) simples e flexível, gratuito e de código aberto que permite que os web designers

Como instalar o WonderCMS no Fedora 29

Como instalar o WonderCMS no Fedora 29

Usando um sistema diferente? O WonderCMS é um CMS de arquivo simples, rápido e pequeno, de código aberto, escrito em PHP. O código fonte do WonderCMS está hospedado no Github. Este guia irá

Como instalar o Redaxscript 3.2 CMS em um Ubuntu 16.04 LAMP VPS

Como instalar o Redaxscript 3.2 CMS em um Ubuntu 16.04 LAMP VPS

Usando um sistema diferente? O Redaxscript 3.2 CMS é um sistema de gerenciamento de conteúdo (CMS) moderno e ultra leve, gratuito e de código aberto com foguete-fas

Como instalar o Neos CMS no Debian 9

Como instalar o Neos CMS no Debian 9

Usando um sistema diferente? Neos é uma plataforma de aplicativos de conteúdo com um CMS e uma estrutura de aplicativos em seu núcleo. Este guia mostra como instalar

Como instalar o Directus 6.4 CMS em um CentOS 7 LAMP VPS

Como instalar o Directus 6.4 CMS em um CentOS 7 LAMP VPS

Usando um sistema diferente? O Directus 6.4 CMS é um sistema de gerenciamento de conteúdo sem cabeça (CMS) poderoso e flexível, gratuito e de código aberto que fornece

Como instalar o BoltWire CMS no CentOS 7

Como instalar o BoltWire CMS no CentOS 7

Usando um sistema diferente? Introdução O BoltWire é um sistema de gerenciamento de conteúdo gratuito e leve, escrito em PHP. Comparado com a maioria dos outros gerenciadores de conteúdo

Como instalar o BigTree CMS 4.2 em um CentOS 7 LAMP VPS

Como instalar o BigTree CMS 4.2 em um CentOS 7 LAMP VPS

Usando um sistema diferente? O BigTree CMS 4.2 é um sistema de gerenciamento de conteúdo (CMS) de nível empresarial, rápido e leve, gratuito e de código aberto, com uma extensa

Como instalar o Redaxscript 3.2 CMS em um CentOS 7 LAMP VPS

Como instalar o Redaxscript 3.2 CMS em um CentOS 7 LAMP VPS

Usando um sistema diferente? O Redaxscript 3.2 CMS é um sistema de gerenciamento de conteúdo (CMS) moderno e ultra leve, gratuito e de código aberto com foguete-fas

Instalando o Bolt CMS no CentOS 7

Instalando o Bolt CMS no CentOS 7

Bolt é um CMS de código aberto escrito em PHP. O código fonte do Bolts está hospedado no GitHub. Este guia mostra como instalar o Bolt CMS em um novo CentOS 7 Vult

Como instalar o Automad CMS no CentOS 7

Como instalar o Automad CMS no CentOS 7

Usando um sistema diferente? Automad é um sistema de gerenciamento de conteúdo (CMS) baseado em arquivo de código aberto e um mecanismo de modelo escrito em PHP. O código-fonte Automad i

Como instalar o Directus 6.4 CMS em um FreeBSD 11 FAMP VPS

Como instalar o Directus 6.4 CMS em um FreeBSD 11 FAMP VPS

Usando um sistema diferente? O Directus 6.4 CMS é um sistema de gerenciamento de conteúdo sem cabeça (CMS) poderoso e flexível, gratuito e de código aberto que fornece

Como instalar o ProcessWire CMS 3.0 em um Ubuntu 16.04 LAMP VPS

Como instalar o ProcessWire CMS 3.0 em um Ubuntu 16.04 LAMP VPS

Usando um sistema diferente? O ProcessWire CMS 3.0 é um CMS (Content Management System) simples, flexível e poderoso, de código aberto e gratuito. ProcessWire CMS 3.

Como instalar o Anchor CMS em um CentOS 7 LAMP VPS

Como instalar o Anchor CMS em um CentOS 7 LAMP VPS

Usando um sistema diferente? O Anchor CMS é um mecanismo de blog de sistema de gerenciamento de conteúdo (CMS) super simples e extremamente leve, gratuito e de código aberto que

Instalando o Anchor CMS no CentOS 7

Instalando o Anchor CMS no CentOS 7

Usando um sistema diferente? Anchor é um CMS de blog leve e de código aberto, escrito em PHP. O código-fonte Anchors está hospedado no GitHub. Este guia irá mostrar-lhe como

Instalando o Microweber no Ubuntu 16.04

Instalando o Microweber no Ubuntu 16.04

Usando um sistema diferente? Microweber é um software livre de arrastar e soltar CMS e loja online. O código-fonte da Microweber está hospedado no GitHub. Este guia irá mostrar-lhe

Instalando o Fork CMS no FreeBSD 12

Instalando o Fork CMS no FreeBSD 12

Usando um sistema diferente? Fork é um CMS de código aberto escrito em PHP. O código fonte do Forks está hospedado no GitHub. Este guia mostra como instalar o Fork CM

Como instalar o Thelia 2.3 no CentOS 7

Como instalar o Thelia 2.3 no CentOS 7

Usando um sistema diferente? O Thelia é uma ferramenta de código aberto para a criação de sites de comércio eletrônico e gerenciamento de conteúdo on-line, escrito em PHP. Código fonte Thelia i

Como instalar o ProcessWire CMS 3.0 em um VPS FAMP 26 LAMP

Como instalar o ProcessWire CMS 3.0 em um VPS FAMP 26 LAMP

Usando um sistema diferente? O ProcessWire CMS 3.0 é um CMS (Content Management System) simples, flexível e poderoso, de código aberto e gratuito. ProcessWire CMS 3.

Como instalar o Craft CMS no FreeBSD 12

Como instalar o Craft CMS no FreeBSD 12

Usando um sistema diferente? Introdução O Craft CMS é um CMS de código aberto escrito em PHP. O código-fonte do Craft CMS está hospedado no GitHub. Este guia irá mostrar-lhe

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.