Fluxos de trabalho recomendados para hosts virtuais Apache?

8

Eu faço muito trabalho de desenvolvimento local na minha máquina Ubuntu e estou constantemente configurando hosts virtuais no Apache. Não preciso fazer o gerenciamento do servidor núcleo duro, mas estou cansado do processo repetitivo de adicionar manualmente diretivas de configuração aos arquivos em / etc / apache2 / sites-available / e atualizar o arquivo / etc / hosts.

Existe uma maneira mais eficiente ou automatizada de fazer tudo isso que estou perdendo? Talvez algo como rapache, mas que está realmente funcionando?

craig zheng
fonte

Respostas:

8

Quando tive que fazer várias coisas, continuei criando um VirtualHost com um nome curinga:

  1. Escolha um nome de domínio sofisticado como 'example.com' para localhost
  2. Coloque-o no /etc/hostsarquivo como127.0.0.1 *.example.com
  3. Instale e ative mod_rewrite
  4. crie um curinga VirtualHost no diretório de 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. Agora você pode colocar qualquer pasta abaixo /srv/e ela será a raiz do<foldername>.example.com

Isso é emprestado da memória, pode precisar de alguns ajustes menores e pode entrar em conflito com outras regras de reescrita que cada aplicativo da web teria. Mas é adequado para minhas necessidades de teste de aplicativos da web.

teísta
fonte
Isso é muito inteligente, vai tentar. Obrigado.
craig zheng
Ótima resposta. Exceto que o curinga não funcionou para mim, eu tive que usar o dnsmasq para fazê-lo funcionar.
Elias
3

o webmin funcionaria? Não é apenas para o apache, mas uma interface da web para administração do sistema. Ele possui uma interface de preenchimento de formulário para apache host virtual.

sagarchalise
fonte
11
Observou o webmin, mas achou que poderia ser um exagero, sabia?
craig zheng
Eu usá-lo no meu servidor de desenvolvimento, isso torna as coisas um pouco mais fácil que eu ainda SSH em de vez em quando
Eman
0

por que não criar um site que cria / atualiza os arquivos para você? se você estiver trabalhando com php e este for local, use apenas a função exec () para executar comandos de terminal para gravar / criar / atualizar dados desejados com base nas entradas da caixa de texto. Eu gostaria de saber como criar aplicativos no ubuntu que são baseados em GUI. tornaria a vida muito fácil.

Sarmen B.
fonte