Folder Hosting di direktori home menggunakan nginx


11

Saya ingin menambahkan sebuah kondisi dalam skrip adduser untuk memperbarui nginx.conf agar ia memuat ~ / www sebagai http: // ipaddress / ~ pengguna setiap kali saya membuat pengguna baru.

Dan ketika seorang pengguna bernama www.domainname ia akan menghosting nama domain itu di folder ~ / www.

Apakah ada skrip yang sudah melakukan ini?


Tidak, tidak ada.
mailq

Jawaban:


24

Anda tidak perlu menambahkan apa pun ke nginx saat membuat pengguna. Cukup gunakan sesuatu seperti ini di blok server Anda:

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

Periksa distribusi Anda / etc / skel

jika Anda mkdir / etc / skel / www semua userdir yang dibuat oleh adduser (atau skrip adduser distribusi Anda) akan memiliki direktori ini secara default.


sekarang bagaimana jika saya ingin para pengguna untuk menimpa ini sekali kemudian mengarahkan dns mereka ke server itu?
Joseph Le Brech

Saya tidak mengerti pertanyaan / masalah: /
Franz Bettag

jika pengguna memiliki situs yang dihosting pada ~ nama pengguna, apakah ada cara bagi pengguna untuk mengubahnya ke nama domain
Joseph Le Brech

Anda dapat memberi pengguna kemungkinan untuk memiliki nginx.conf sendiri, sesuatu seperti (tidak 100% benar, tetapi arahnya ada): if (-e /home/$1/.nginx.conf) {include (/ home / $ 1 / .nginx.conf); } di sana pengguna dapat melakukan pengaturannya sendiri, tetapi juga merusak server-restart. ini sedikit masalah yang dikompilasi.
Franz Bettag

1
yang benar-benar mengguncang :)
Joseph Le Brech
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.