Flussi di lavoro consigliati per host virtuali Apache?


8

Faccio molto lavoro di sviluppo web locale sulla mia macchina Ubuntu e installo costantemente host virtuali in Apache. Non ho bisogno di fare una gestione del server hard core, ma mi sto stancando del processo ripetitivo di aggiungere manualmente le direttive di configurazione ai file in / etc / apache2 / siti-disponibili / e quindi aggiornare il file / etc / hosts.

Esiste un modo più efficiente o più automatizzato di fare tutto ciò che mi manca? Forse qualcosa come il rapache ma in realtà funziona?

Risposte:


8

Quando ho dovuto fare molte cose, continuo a creare un VirtualHost con un nome jolly:

  1. Scegli un nome di dominio di fantasia come 'esempio.com' per localhost
  2. Mettilo nel /etc/hostsfile come127.0.0.1 *.example.com
  3. Installa e attiva mod_rewrite
  4. creare un VirtualHost jolly nella directory dei siti 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. Ora puoi posizionare qualsiasi cartella sotto /srv/e sarà la radice per<foldername>.example.com

Questo è preso in prestito dalla memoria, potrebbe essere necessario apportare alcune modifiche minori e potrebbe essere in conflitto con qualsiasi altra regola di riscrittura che ogni webapp avrebbe. Ma mi va bene per le mie esigenze di test webapp.


È molto intelligente, ci proverò. Grazie.
Craig Zheng,

Bella risposta. Tranne che il jolly non ha funzionato per me, ho dovuto usare dnsmasq per farlo funzionare.
elias,

3

sarebbe Webmin lavoro? Non è solo per apache ma piuttosto un'interfaccia web per l'amministrazione del sistema. Ha un'interfaccia di compilazione di moduli per l'host virtuale di apache.


1
Hai cercato nel webmin ma hai pensato che potesse essere eccessivo, sai?
Craig Zheng,

Lo uso sul mio server di sviluppo, rende le cose un po 'più semplici anche se di tanto in tanto SSH di tanto in tanto
Eman

0

perché non creare un sito Web che crea / aggiorna i file per te? se stai lavorando con php e questo è locale usa solo la funzione exec () per eseguire i comandi del terminale per scrivere / creare / aggiornare i dati che desideri in base alle voci della casella di testo. Vorrei sapere come creare applicazioni su Ubuntu basate sulla GUI. renderebbe la vita davvero facile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.