Semana passada em
Hospedagem Compartilhada (Hospedagem compartilhada) pressupõe que muitas contas de clientes estão hospedadas em um servidor. Via de regra, a conta de um cliente contém vários sites. Os sites funcionam tanto em CMS prontos (por exemplo, Bitrix) quanto em CMS personalizados. Assim, os requisitos técnicos de todos os sistemas são diferentes, portanto várias versões do PHP devem ser gerenciadas dentro do mesmo servidor.
Usamos Nginx como servidor web principal: ele aceita todas as conexões externas e fornece conteúdo estático. Fazemos proxy das solicitações restantes para o servidor web Apache. É aqui que a mágica começa: cada versão do PHP executa uma instância separada do Apache que escuta em uma porta específica. Esta porta está registrada no host virtual do site do cliente.
Você pode ler mais sobre o funcionamento do esquema Compartilhado em
Esquema compartilhado
É importante ressaltar que instalamos pacotes PHP para diferentes versões, pois normalmente todas as distribuições possuem apenas uma versão do PHP.
Segurança primeiro!
Uma das principais tarefas da hospedagem compartilhada é garantir a segurança dos dados dos clientes. Contas diferentes, localizadas no mesmo servidor, são independentes e independentes. Como funciona?
Os arquivos do site são armazenados nos diretórios iniciais dos próprios usuários e os caminhos necessários são especificados no host virtual dos servidores web. É importante que os servidores web, Nginx e Apache, tenham acesso aos arquivos finais de um cliente específico, já que o servidor web é iniciado por apenas um usuário.
Nginx usa um patch de segurança desenvolvido pela equipe Timeweb: esse patch altera o usuário para aquele especificado no arquivo de configuração do servidor web.
Para outros provedores de hospedagem, esse problema pode ser resolvido, por exemplo, através da manipulação de direitos estendidos do sistema de arquivos (ACL).
Apache usa um módulo de multiprocessamento para executar
Assim, graças às operações descritas acima, obtemos um ambiente seguro e isolado para cada cliente. Ao mesmo tempo, também resolvemos problemas de dimensionamento para hospedagem compartilhada.
Como a combinação Apache e Nginx é implementada pode ser lida em
Se você tiver alguma dúvida para nossos especialistas, escreva nos comentários. Tentaremos responder a tudo ou descrever a solução do problema com mais detalhes nos artigos seguintes.
Fonte: habr.com