CentOS e mutiple python website developers

1

Eu preciso ser capaz de suportar múltiplos (~ 100) usuários diferentes com seus próprios sites em um servidor web baseado no CentOS. Eles precisam usar o Python (v2 e v3) junto com o Django. Eu entendo que a reinicialização systemctl é necessária para o apache, que pode ser organizada por um cron job. No entanto, não faço ideia das outras dicas & truques e requisitos do lado do administrador. Existe um site que será usado para configurar o servidor? Eu entendo que cada um deles pode executar seus próprios servidores web (simpleHTTPserver), mas parece muito confuso para mim.

Eu ficaria grato por qualquer ajuda sobre o assunto.

    
por user926918 27.08.2017 / 09:34

2 respostas

0

Eu sugeriria usar o VirtualHosts e automatizar a configuração

Você pode configurá-lo para que /var/www/<sname> seja carregado automaticamente para qualquer <sname>.domain.com

Exemplo: ir para s1.domain.com e s1.domain.com carregará automaticamente /var/www/s1 e /var/www/s2 , respectivamente.

Nginx

A diretiva server_name é simplesmente usada para corresponder uma solicitação ao site; você pode usar um regex:

server {
    listen 80;
    server_name ~^(www\.)?(?<sname>.+?).domain.com$;
    root /var/www/$sname
    ...
}

Você pode usar $sname em todo o restante da configuração

Apache

Isso é um pouco complicado, mas pode ser feito

LoadModule vhost_alias_module modules/mod_vhost_alias.so
UseCanonicalName Off
    <VirtualHost *:80>
    ServerName vhosts.fqdn
    ServerAlias *.example.com
    VirtualDocumentRoot /var/www/%1+
</VirtualHost>

Se você quiser usar HTTPS, tenho certeza de que há uma API para gerar certificados Letsencrypt

    
por 27.08.2017 / 10:01
0

Você deve estar na frente de seus aplicativos (Django, Flask, qualquer pythonic) com um proxy reverso usando Nginx.

Em seguida, instale apenas os pacotes easy_install, setuptools e virtualenv no sistema python. Todos os devs devem usar seu próprio env virtual para instalar pacotes.

    
por 03.09.2017 / 00:18