Alur kerja yang disarankan untuk host virtual Apache?

8

Saya melakukan banyak pekerjaan pengembangan web lokal pada mesin Ubuntu saya, dan saya terus-menerus membuat host virtual di Apache. Saya tidak perlu melakukan manajemen server inti keras, tapi saya bosan dengan proses berulang secara manual menambahkan perintah konfigurasi ke file di / etc / apache2 / sites-available / dan kemudian memperbarui file / etc / hosts.

Apakah ada cara yang lebih efisien atau otomatis untuk melakukan semua ini yang saya lewatkan? Mungkin sesuatu seperti rapache tetapi itu benar-benar berfungsi?

craig zheng
sumber

Jawaban:

8

Ketika saya harus melakukan hal-hal shuch saya melanjutkan membuat VirtualHost dengan nama wildcard:

  1. Pilih nama domain mewah seperti 'example.com' untuk localhost
  2. Tempatkan dalam /etc/hostsfile sebagai127.0.0.1 *.example.com
  3. Pasang dan aktifkan mod_rewrite
  4. buat wildcard VirtualHost di direktori situs apache:

    <VirtualHost 127.0.0.1:80>
      DocumentRoot /default/path
      ServerName example.com
      ServerAlias *.example.com
      RewriteEngine On
      UseCanonicalName Off
    
      RewriteCond %{HTTP_HOST} ^(.*).example.com
      RewriteCond /srv/%1/ -d
      RewriteRule ^(.+)   %{SERVER_NAME}$1 [C]
      RewriteRule ^([^.]+)\.example\.com/(.*) /srv/$1/$2 [L]
    </VirtualHost>
    
  5. Sekarang Anda dapat meletakkan folder apa saja di bawah /srv/dan itu akan menjadi root untuk<foldername>.example.com

Ini dipinjam dari memori, mungkin perlu beberapa penyesuaian kecil dan mungkin bertentangan dengan aturan penulisan ulang lainnya yang akan dimiliki setiap aplikasi web. Tapi itu cocok untuk kebutuhan pengujian webapp saya.

teis
sumber
Itu sangat pintar, akan mencobanya. Terima kasih.
craig zheng
Jawaban yang bagus Kecuali wildcard tidak berfungsi untuk saya, saya harus menggunakan dnsmasq untuk membuatnya berfungsi.
elias
3

apakah webmin akan berfungsi? Ini bukan hanya untuk apache tetapi juga antarmuka web untuk administrasi sistem. Itu memang memiliki antarmuka pengisian formulir untuk host virtual apache.

sagarchalise
sumber
1
Melihat ke webmin tetapi berpikir itu mungkin berlebihan, Anda tahu?
craig zheng
Saya menggunakannya di server pengembangan saya, itu membuat segalanya sedikit lebih mudah meskipun saya masih SSH dari waktu ke waktu
Eman
0

mengapa tidak membuat situs web yang membuat / memperbarui file untuk Anda? jika Anda bekerja dengan php dan ini hanya lokal gunakan fungsi exec () untuk menjalankan perintah terminal untuk menulis / membuat / memperbarui data yang Anda inginkan berdasarkan entri kotak teks. Saya berharap saya tahu cara membuat aplikasi di ubuntu yang berbasis gui. akan membuat hidup sangat mudah.

Sarmen B.
sumber