Carpeta de alojamiento en el directorio de inicio usando nginx


11

Me gustaría agregar una condición en un script adduser para actualizar nginx.conf para que cargue ~ / www como http: // ipaddress / ~ user cada vez que creo un nuevo usuario.

Y cuando un usuario se llama www.domainname, alojará ese nombre de dominio en la carpeta ~ / www.

¿Hay un script que ya hace esto?


No, no hay
mailq

Respuestas:


24

No necesita agregar nada a nginx luego de la creación del usuario. Simplemente use algo como esto en su bloque de servidor:

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

Verifique sus distribuciones / etc / skel

si mkdir / etc / skel / www todos los userdirs creados por adduser (o sus distribuciones adduser-script) tendrán este directorio por defecto.


ahora, ¿qué pasa si quiero que los usuarios anulen esto una vez y luego apunten sus DNS a ese servidor?
Joseph Le Brech

No entiendo la pregunta / problema: /
Franz Bettag

si un usuario tiene un sitio alojado en ~ nombre de usuario, ¿hay alguna manera de que el usuario lo cambie a nombre de dominio?
Joseph Le Brech

Podría darle al usuario la posibilidad de tener su propio nginx.conf, algo así como (no es 100% correcto, pero la dirección está ahí): if (-e /home/$1/.nginx.conf) {include (/ home / $ 1 / .nginx.conf); } allí el usuario podría hacer su propia configuración, pero también interrumpir el reinicio del servidor. Este es un problema un poco compilado.
Franz Bettag

1
que realmente rocas :)
Joseph Le Brech
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.