Pasta Hospedagem no diretório inicial usando o nginx

11

Gostaria de adicionar uma condição em um script adduser para atualizar o nginx.conf para que ele carregue ~ / www como http: // ipaddress / ~ user sempre que eu criar um novo usuário.

E quando um usuário é nomeado www.domainname, ele hospeda esse nome de domínio na pasta ~ / www.

Existe um script que já faz isso?

Joseph Le Brech
fonte
Não, não existe.
mailq

Respostas:

24

Você não precisa adicionar nada ao nginx na criação do usuário. Basta usar algo como isso no bloco do servidor:

location ~ ^/~(.+?)(/.*)?$ {
    alias /home/$1/www$2;
    autoindex on;
}

Verifique suas distribuições / etc / skel

se você mkdir / etc / skel / www, todos os userdirs criados por adduser (ou suas distribuições adduser-script) terão esse diretório por padrão.

Franz Bettag
fonte
Agora, e se eu quiser que os usuários substituam isso uma vez, eles apontaram o DNS para esse servidor?
Joseph Le Brech 10/10
Não entendi a pergunta / problema: /
Franz Bettag 16/10
se um usuário tiver um site hospedado em ~ nome de usuário existe uma maneira para que o usuário alterá-lo para domainname
Joseph Le Brech
Você poderia dar ao usuário a possibilidade de ter seu próprio nginx.conf, algo como (não 100% correto, mas a direção está lá): if (-e /home/$1/.nginx.conf) {include (/ home / $ 1 / .nginx.conf); } o usuário pode fazer sua própria configuração, mas também interromper a reinicialização do servidor. esse é um problema um pouco compilado.
Franz Bettag
1
que realmente rochas :)
Joseph Le Brech