Como distinguir efetivamente o local de teste e produção?

15

Às vezes, você pode precisar clonar seu site de produção no site TEST. Após a clonagem, eles parecem idênticos, exceto a URL.

Aconselhe sua prática recomendada a distinguir o front-end e o back-end do seu site de TEST de maneira rápida e eficaz, para que PROD e TEST não possam ser confundidos acidentalmente.

Objetivo:

  • impedir que os usuários insiram dados de produção no site TEST por engano
  • impedir que desenvolvedores (testadores etc.) realizem testes no local de produção por engano
miroxlav
fonte

Respostas:

10

Esta é uma solução bastante técnica, pois requer alguma experiência na configuração do Apache. A vantagem é que você não precisa hackear nenhum arquivo no Joomla! instalação em si.

Basicamente, o que eu quero fazer é acrescentar um pouco de HTML a qualquer página (quase qualquer página) sendo gerada.

Para isso, usarei o Apache Module mod_substitute . O módulo em si precisa ser ativado (geralmente só precisa do # comentário removido) dentro httpd.conf.

LoadModule substitute_module modules/mod_substitute.so

A seguir, no arquivo hosts virtuais ( httpd-vhosts.conf):

<VirtualHost *>
DocumentRoot "C:\...."
ServerName joomla-development

AddOutputFilterByType SUBSTITUTE text/html
Substitute "s|</body>|<div style='position:fixed; left:100px; top:50px; background-color:red'><h1>DEV WEBSITE</h1></div></body>|i"

<Directory "C:\....">
    AllowOverride All
    Require all granted
    Order allow,deny
    Allow from all
</Directory>

</VirtualHost>

Basicamente Substitute, estou substituindo a </body>tag por algum HTML. Dessa forma, tento ficar de fora de qualquer solicitação do Ajax.

Resultado final:

insira a descrição da imagem aqui

Valentin Despa
fonte
13

A prática que seguimos é -

  1. Altere o título do site na configuração global para o título original de [TEST].
  2. Altere a configuração do email para apontar para mailtrap.io
  3. Se o site de teste estiver no mesmo servidor, altere os detalhes do banco de dados.
  4. Alterar todas as integrações de terceiros para a conta de teste (serviços além do joomla), por exemplo
    • Memcache ou redis
    • banco de dados / armazenamento externo
    • Gateway de pagamento,
    • sistema de boletim informativo (mailchimp)
    • Conta e domínio da CDN
    • Conta de serviço de análise (google analytics, new-relic)
Shyam
fonte
Obrigado por adicionar essas práticas. Especialmente o ponto 2 pode ser tão importante quanto a distorção visual. Eu também acrescentaria " não se esqueça de alterar todas as outras integrações de site " (por exemplo, no banco de dados de terceiros ou no sistema de pagamento).
Miroxlav 5/05
Obrigado pela dica em mailtrap.io! Olhando para isso agora.
Chad Windnagle
6

Tenho o mesmo problema com os clientes, às vezes, criando conteúdo na versão de desenvolvimento, não na produção. Eu uso o seguinte para lidar com isso:

  • Alterar todos os nomes de banco de dados e senha
  • Modifique o modelo de administrador com
    • Um plano de fundo diferente para a tela de login
    • Uma cor diferente para a barra superior
  • Use um módulo em uma posição de destaque no front-end que mostre claramente que este é o local de produção
  • Em alguns sites, também forço o login para ver o site de desenvolvimento

insira a descrição da imagem aqui

tim.baker
fonte
4

Outra abordagem é permitir que seu navegador adicione estilos CSS ao seu site.

O elegante plug-in do navegador ( para Firefox e Chrome ) foi projetado para esta tarefa. Aplica CSS personalizado adicional a todas as páginas em um determinado URL. Você realmente define as regras [URL] => [CSS].

insira a descrição da imagem aqui

Exemplo acima: a distinção pode ser feita adicionando linhas sólidas ou pontilhadas à esquerda
Vermelho = produção, Amarelo = pré- produção , Verde = TESTE, Azul = Treinamento, Cinza = DEV etc.

Vantagens:

  • Pode ser aplicado no local de produção, que normalmente é mantido limpo de recursos visuais.
  • Pode ser temporariamente desativado pelo usuário, se necessário (por exemplo, para capturar capturas de tela).
  • Solução universal - pode ser aplicada a qualquer site ou parte dele (com base no caminho da URL).
  • Pode ser usado sem acesso de administrador ao site especificado.
  • Configure uma vez, sem manutenção se o site for alterado.

Desvantagens:

  • Atualmente limitado ao Firefox e Chrome. (Ainda não há problema para as equipes de DEV / TEST / Support concordarem internamente em seu navegador principal.)
  • O compartilhamento privado de suas configurações de estilo com outros usuários exige um pouco mais de trabalho. Para sites conhecidos publicamente, isso não é um problema - na userstyles.org (página inicial do plug-in) já existem milhares de estilos. Deseja ver o StackOverflow em preto ou com menos espaço entre as seções da página?
miroxlav
fonte