Posts tagged ‘ubuntu’

23 de fevereiro de 2011

Script para adicionar um Virtual Host no Apache em Ubuntu

por adlerparnas

Salve pessoal!

Mais uma vez off por um bom tempo. Graças a Deus estou cheio de projetos, a pós em Engenharia de Software Centrada em Metodologias Ágeis está me ocupando bastante mas infelizmente está sobrando pouco tempo pra escrever.

Hoje vim postar um script básico para automatizar a criação de virtual host no apache pra quem desenvolve em linux (no meu caso Ubuntu). Reconheço que o script é bem medíocre, mas pra correria do dia-a-dia é uma mão na roda.

Basicamente o que o script faz é :

  1. Requisitar ao usuário que informe o nome do host;
  2. Requisitar ao usuário o caminho do diretório raiz para esse host;
  3. Criar o arquivo de configuração na pasta /etc/apache2/sites-available contendo a configuração necessária;
  4. Ativar esse host acrescentando um link na pasta /etc/apache2/sites-enabled para seu arquivo de configuração;
  5. Acrescentar o nome do host no arquivo /ect/hosts;
  6. Finalmente Reiniciar o apache;
###########################################################
# Criado por Adler Parnas <adler.parnas@doisdeum.com.br>  #
#                                                         #
# 2011-02-23                                              #
###########################################################
#                                                         #
# Script para criar um virtual host no apache e adicionar #
# o nome do host no arquivo hosts                         #
#                                                         #
###########################################################
#!/bin/bash

echo "Informe o nome do server (Ex.: adler.local) :"
read server

echo "Informe o caminho do site (Ex.: /var/www/adler) :"
read path

echo "Criando configuração de VHost para o server"

echo "<VirtualHost *:80>
	ServerAdmin webmaster@localhost
	ServerName $server
	ServerAlias www.$server

	DocumentRoot \"$path\"

	<Directory \"$path\">
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order allow,deny
		Allow from all
	</Directory>
     </VirtualHost>" > /etc/apache2/sites-available/$server

echo "Ativando VHOST $server"
ln -s /etc/apache2/sites-available/$server /etc/apache2/sites-enabled/$server

echo "Atualizando arquivo hosts"
echo "127.0.1.1		$server	www.$server" >> /etc/hosts

echo "Reiniciando apache";
/etc/init.d/apache2 restart

echo "VHOST criado";

É isso ai pessoal! Espero que esse script seja útil para vocês assim como é pra mim.
Correções e Sugestões são bem-vindas, então fiquem a vontade para comentar.
Abraços e até a próxima