Clone do ModX Staging feito da maneira certa

Este é um pequeno tutorial para resumir as etapas necessárias para usar um servidor de teste Modx Revolution.
o original está aqui: http://www.dzi-neo.net/blog-dzineo/staging-clone.html

** Contexto **
Um site de produção é hospedado em uma solução profissional ou semiprofissional em que você tem direitos e meios suficientes para fazer algumas manipulações de ** SSH ** ou tem um painel de administração como o ** Plesk. **
E
você está usando a ** solução multilíngue Babel **. (Pode ser que todos os casos não sejam cobertos).

O objetivo é clonar seu servidor completo em outro local (principalmente no mesmo servidor e, geralmente, tornando-o acessível por meio de um subdomínio). Se você tiver um site de produção e estiver planejando grandes mudanças no site, considere configurar um site de teste – um local separado no servidor onde você pode atualizar e testar convenientemente uma cópia do site antes de colocá-lo em produção.

** Aqui está o trecho da documentação do Plesk: **

Decida onde você deseja hospedar a cópia de desenvolvimento e preparar o ambiente de desenvolvimento. Você pode escolher hospedá-lo no mesmo espaço da web, em um espaço da web separado no mesmo servidor ou carregá-lo para uma conta FTP em outro servidor.
Se você escolher o mesmo espaço da web, primeiro precisará configurar um novo site adicionando um domínio ou subdomínio.

Essas etapas serão:

Faça uma cópia do site e coloque-a no ambiente de teste.
Faça cópias dos bancos de dados usados ​​pelo site e implante-os no ambiente de preparação.
Altere as configurações de conexão do banco de dados nos scripts para apontar para os bancos de dados no ambiente de preparação.

** Usando o Plesk para completar as tarefas # 1 e 2: **
Para configurar um domínio para fins de teste:

Vá para a guia Sites e domínios.
Clique em Adicionar novo domínio ou Adicionar novo subdomínio.
Aqui, prosseguiremos para um subdomínio denominado “dev01” para usar o clone em dev01.myserver.tld
Para fazer uma cópia dos arquivos do site:

Vá para a guia Sites e Domínios e encontre o nome do site que deseja copiar.
Clique em Cópia do site.
Para copiar os arquivos do site para a raiz do documento de um site existente:
Selecione a opção Site no Plesk.
Selecione o site de destino no menu Nome do site.
Especifique o que fazer com os arquivos que já podem estar presentes no diretório de destino.
Para copiar os arquivos do site para uma conta FTP neste ou em outro servidor:
Selecione a opção Armazenamento FTP.
Especifique o nome do host do servidor e as credenciais para se conectar à conta FTP.
No campo Método de conexão FTP, deixe a opção Modo ativo selecionada. Se o Plesk não conseguir se conectar à conta FTP externa, selecione a opção Modo passivo aqui.
Clique OK.
nota: a transferência clássica por FTP não é uma boa ideia com um grande número de arquivos, como na árvore de arquivos Modx.

** Usando SSH: **

Uma vez logado, faça o necessário cd / all / the / way / down / to / your / folder / ABOVE / httpdocs /

rsync -a “Seus Httpdocs” “/ onde está / seu / subdomínio / pasta

Isso criará uma cópia de “arquivo” preservando direitos e propriedades. Pode levar muito tempo (alguns minutos). Então, a última coisa a fazer é repassar a própria pasta httpdocs para o proprietário correto (que agora é tipicamente “root” e deve voltar ao mesmo que a fonte original).

por exemplo:

chown -R www-data: www-data modx-staging

** Para fazer uma cópia de um banco de dados do servidor gerenciado pelo Plesk: **

Vá para a guia Sites e domínios> Bancos de dados.
Clique em Copiar na lista de bancos de dados para o banco de dados que deseja copiar.
Especifique o seguinte:
Servidor de banco de dados de destino. Você pode selecionar o mesmo servidor de banco de dados gerenciado pelo Plesk ou um servidor de banco de dados localizado em outro lugar. Para um servidor de banco de dados externo, especifique o nome do host ou endereço IP e credenciais de acesso: o nome de usuário e a senha de um usuário do sistema de gerenciamento de banco de dados autorizado a criar novos bancos de dados e tabelas de banco de dados.
Banco de dados de destino. Você pode optar por criar um novo banco de dados ou copiar os dados para um banco de dados existente.
Crie uma cópia completa. Deixe esta opção selecionada para copiar a estrutura do banco de dados e todos os dados.
Clique OK.
A cópia do banco de dados será implantada no servidor de destino.
Eu sugiro fortemente usar outro usuário SQL para este banco de dados número 2.

Modifique os scripts do site no ambiente de preparação para que eles se conectem ao banco de dados copiado.

Para editar todos os arquivos em questão

Ao mover um site ModX, é sempre obrigatório editar os 2 arquivos config.inc.php encontrados na pasta do site e na pasta core / config.

Aqui você terá que combinar os nomes do banco de dados, usuário para conexão e alguns caminhos para adaptá-los ao novo local. basta olhar para esse arquivo em seu editor de código favorito e realizar uma busca / substituição.

Bem, infelizmente isso provavelmente não será suficiente porque, dependendo dos diferentes componentes que você está usando, há grandes chances de que haja alguns outros arquivos de configuração em algum lugar que também precisem ser tocados.

** Aqui estão algumas dicas muito boas deste artigo do codewall **: https://coderwall.com/martinseener Acabei de colar aqui:

… para encontrar todos os lugares, onde o caminho codificado, por ex. / var / www / modx-production / está sendo usado no ambiente de teste. Usaremos as boas e velhas ferramentas do Linux para isso

grep -r “modx-production” /var/www/dev01.myserver.tld/

você terá então uma lista de arquivos que precisam ser tocados. Para ser eficiente com este método, a pasta suddomain NÃO deve estar na pasta do domínio, caso contrário, você não terá nenhuma palavra-chave significativa para pesquisar.

** Agora adivinhe? **
Limpe a pasta de cache em core / pasta, ou você pode deletar esta pasta de cache porque ela será recriada por modx.

Neste ponto, prefiro executar novamente uma configuração

** Vá para a configuração para consertar todas as coisas potencialmente perdidas. **
Eu recomendo não remover a pasta de configuração depois que a instalação for concluída, mas prefiro renomeá-la com algo incluindo o número de versão do ModX. Desta forma, você só precisa renomeá-lo de volta para “setup” e ir para sua url para executar um procedimento avançado para verificar a conexão e agrupamento do banco de dados e terminar o processo de reinstalação para corrigir quaisquer falhas.

Depois de concluído corretamente, você está pronto e seu servidor de teste está quase pronto, então seu url «/ manager» deve responder corretamente. Basicamente, o arquivo .htaccess na raiz do site não deve ter que ser editado, mas depende de como você gerencia suas coisas no Babel.

** Adapte os contextos do ModX ** Faça
login como gerente e vá para o seu sistema / menu de configuração do sistema

verifique o núcleo | parâmetros do site para editar o nome do site e transformá-lo em «seu nome dev» ou algo assim. Isso evitará qualquer confusão quando você voltar a um gerenciador modx e evitar editar o site de produção por engano.
Agora vá para o menu Contextos e edite o padrão mais qualquer outro contexto que reflita os outros idiomas com os quais você está lidando.
clique com o botão direito em cada um deles para editar, vá para a guia de parâmetros, clique com o botão direito no parâmetro de url do site e adapte o caminho para corresponder ao seu servidor de teste.

SALVE 

Agora, aproveite seu clone e faça mágica com ele!