Flux de travail recommandés pour les hôtes virtuels Apache?

8

Je fais beaucoup de travail de développement Web local sur ma machine Ubuntu et je configure constamment des hôtes virtuels dans Apache. Je n'ai pas besoin de faire de gestion de serveur noyau dur, mais je me lasse du processus répétitif consistant à ajouter manuellement des directives de configuration aux fichiers dans / etc / apache2 / sites-available / puis à mettre à jour le fichier / etc / hosts.

Existe-t-il un moyen plus efficace ou plus automatisé de faire tout ce qui me manque? Peut-être quelque chose comme le rapache mais qui fonctionne réellement?

craig zheng
la source

Réponses:

8

Quand je devais faire des choses, je crée un VirtualHost avec un nom générique:

  1. Choisissez un nom de domaine de fantaisie comme «example.com» pour localhost
  2. Placez-le dans le /etc/hostsfichier en tant que127.0.0.1 *.example.com
  3. Installer et activer mod_rewrite
  4. créer un VirtualHost générique dans le répertoire des sites 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. Vous pouvez maintenant placer n'importe quel dossier sous /srv/et ce sera la racine de<foldername>.example.com

Ceci est emprunté à la mémoire, il pourrait avoir besoin de quelques ajustements mineurs et cela peut entrer en conflit avec les autres règles de réécriture que chaque application Web aurait. Mais cela me convient pour mes besoins de test de webapp.

théiste
la source
C'est très intelligent, essayez-le. Merci.
craig zheng
Très bonne réponse. Sauf que le caractère générique ne fonctionnait pas pour moi, j'ai dû utiliser dnsmasq pour le faire fonctionner.
elias
3

serait Webmin travail? Ce n'est pas seulement pour apache mais plutôt une interface web pour l'administration système. Il possède une interface de remplissage de formulaire pour l'hôte virtuel apache.

sagarchalise
la source
1
J'ai regardé Webmin mais j'ai pensé que c'était peut-être exagéré, vous savez?
craig zheng
Je l'utilise sur mon serveur de développement, cela rend les choses un peu plus faciles même si je reste SSH de temps en temps
Eman
0

pourquoi ne pas créer un site Web qui crée / met à jour les fichiers pour vous? si vous travaillez avec php et que cela est local, utilisez uniquement la fonction exec () pour exécuter les commandes du terminal pour écrire / créer / mettre à jour les données que vous souhaitez en fonction des entrées de la zone de texte. J'aimerais bien savoir comment créer des applications sur Ubuntu qui sont basées sur l'interface graphique. rendrait la vie vraiment facile.

Sarmen B.
la source