Bagaimana saya bisa mengkonfigurasi VirtualHost tanpa me-restart server web Apache?

15

Saya telah menyebutkan di sini web server apache karena saya menggunakan yang itu.

Sadat
sumber

Jawaban:

15

Saya baru saja melihat halaman ini tetapi tidak yakin seberapa relevan dengan Anda.

Hosting Virtual Massal yang Dikonfigurasi secara Dinamis

Ide dasarnya adalah untuk mengganti semua konfigurasi statis dengan mekanisme yang bekerja secara dinamis. Ini memiliki sejumlah keunggulan:

  1. File konfigurasi Anda lebih kecil, jadi Apache mulai lebih cepat dan menggunakan lebih sedikit memori.
  2. Menambahkan host virtual hanyalah masalah membuat direktori yang sesuai di sistem file dan entri dalam DNS - Anda tidak perlu mengkonfigurasi ulang atau memulai kembali Apache.

MEMPERBARUI

Menambahkan Host Virtual tanpa Memulai Kembali Apache

Ternyata solusinya adalah menggunakan VirtualDocumentRoot bukan hanya pengaturan DocumentRoot tua biasa untuk satu host virtual. Ini memungkinkan menentukan variabel $ 0 sebagai bagian dari nilai. Jadi kami akhirnya dapat memiliki "VirtualDocumentRoot / somedir / $ 1".

TigerTiger
sumber
24

Buat perubahan apa pun pada VirtualHosts Anda, lalu lakukan

apache2ctl configtest

Untuk memastikan tidak ada kesalahan sintaks yang beredar, dan jalankan ini:

apache2ctl graceful

atau

/etc/init.d/apache2 graceful

USR1 atau sinyal anggun menyebabkan proses orangtua menyarankan anak-anak untuk keluar setelah permintaan mereka saat ini (atau segera keluar jika mereka tidak melayani apa-apa). Induk membaca kembali file konfigurasinya dan membuka kembali file lognya. Ketika setiap anak mati, orang tua menggantinya dengan anak dari generasi baru konfigurasi, yang mulai melayani permintaan baru dengan segera.

Pada dasarnya setiap koneksi yang ada tetap utuh, jadi itu tidak sama dengan restart penuh - ini adalah bagaimana saya biasanya melakukan ini pada server produksi dengan puluhan situs.

meder omuraliev
sumber