web-dev-qa-db-fra.com

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

Je fais beaucoup 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 gérer le serveur de base, mais je suis fatigué du processus répétitif consistant à ajouter manuellement des directives de configuration aux fichiers de/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 rapache mais cela fonctionne réellement?

8
craig zheng

Lorsque je devais faire quelque chose, je procédais en créant un VirtualHost avec un nom générique:

  1. Choisissez un nom de domaine de fantaisie comme "exemple.com" pour localhost
  2. Placez-le dans le fichier /etc/hosts en tant que fichier 127.0.0.1 *.example.com
  3. Installer et activer mod_rewrite
  4. créez un caractère générique VirtualHost 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. Maintenant, vous pouvez placer n'importe quel dossier sous /srv/ et ce sera la racine de <foldername>.example.com

Ceci est emprunté à la mémoire, il pourrait nécessiter quelques ajustements mineurs et il pourrait entrer en conflit avec toute autre règle de réécriture de chaque application Web. Mais cela me convient pour mes besoins de test webapp.

8
theist

est-ce que webmin fonctionnerait? Ce n'est pas juste 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.

3
sagarchalise

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 des commandes de terminal afin d'écrire/créer/mettre à jour les données souhaitées en fonction des entrées de la zone de texte. Je voudrais savoir comment faire des applications sur Ubuntu qui sont basées sur l'interface graphique. rendrait la vie vraiment facile.

0
Sarmen B.