Criando Virtual Host no Apache: simples assim

Conheça a nova ferramenta desenvolvida para a plataforma GNU/Linux que gerencia Hosts Virtuais no servidor Apache.

[ Hits: 14.403 ]

Por: Salomao Santos em 04/10/2013


VHost



Nosso artigo de hoje é para você que, assim como eu, muitas vezes durante o desenvolvimento de um projeto, decide criar um Virtual Host no Apache para simplificar as coisas.

Sabemos que não é nenhum bicho de sete cabeças, mas tenho certeza que você vai concordar comigo numa coisa: é um serviço chato de fazer.

Pensando nisto, eu e um amigo decidimos criar algo, ou melhor, um programa que fizesse esta tarefa para nós de modo simples e rápido: VHost.

Neste pequeno tutorial, apresentaremos a vocês esta ferramenta. E para começar, ressaltamos que para utilizá-la existe um pré-requisito, você precisa ter o Java (JRE) instalado.

Se você ainda não o tem, segue abaixo um link que te ensina a obtê-lo:
Com ele (JRE) instalado, faça o seguinte:

1. Clique aqui e faça o download do VHost.

2. Após baixá-lo, descompacte-o e você terá em mãos o arquivo VirtualHost.jar. Clique com o botão direito do mouse e escolha a opção Abrir como e, em seguida, escolha o Java para executá-lo.

A primeira tela que você verá, será a seguinte:

Você deverá informar sua senha de usuário do sistema (não precisa ser a senha de root).

3. Feito isto, verá terá acesso à seguinte tela:

Nela, podemos observar no seu canto esquerdo, uma lista com todos os hosts já existentes no Apache. E do outro lado na parte superior, temos alguns botões que possuem as seguintes funções:
  • Adicionar novo Host;
  • Remover um Host;
  • Recarregar o Apache;
  • Botão para ir direto ao browser, visualizar o host que estiver selecionado;
  • E por fim, um botão com os créditos do programa.

Logo abaixo dos botões, dividimos as tarefas em 3 partes: Configurações Básicas (que já é o suficiente para criarmos um Virtual Host), Logs, Configurações Avançadas (IP, Portas, Alias) e Detalhes (área para adicionar outras opções no arquivo de configuração do Virtual Host).

No primeiro campo (Domínio), insira o endereço que sua aplicação terá no servidor local (exemplo: vhost.local), e no campo abaixo, selecione o diretório onde a mesma se encontra (exemplo: /var/www/vhost).

Estas informações já seriam suficientes para criamos o Virtual Host, mas como já mencionei acima, ainda temos a opção de:

- Apontarmos um caminho, tanto para os logs de acesso à sua aplicação, como para os logs de erro da mesma.

- Definirmos um IP diferente do default (127.0.0.1) e uma outra porta também diferente da padrão (80), além de podermos adicionar um outro alias (apelido) para nossa aplicação.

Vale lembrar que o VHost já cria, automaticamente, um alias para nós, inserindo o www na frente do nosso domínio escolhido.

E mais abaixo, temos uma caixa de texto onde você poderá informar outras opções ao Apache. Para mais informações sobre estas, visite o site do Apache e veja na documentação:
Agora, basta clicar no botão Salvar, e você receberá a informação de que seu arquivo foi criado com sucesso. Porém, para ativá-lo, será necessário recarregar o Apache.

Observe na imagem acima, que o terceiro botão na parte superior mudou de cor, ficando com uma parte "em vermelho", só para nos lembrar que precisamos clicar nele para finalizarmos o processo.

Após clicarmos no botão, veremos a exibição da seguinte informação: Configurações Ativadas. Agora, é só clicar no botão para visualizar no browser a sua aplicação rodando através de uma requisição feita pelo domínio que acabamos de criar.

No meu caso, criei um arquivos chamado index.php, e nele invoquei a função phpinfo(), que exibe as configurações do meu ambiente local.


E é isso aí. Espero que este programa possa lhe ajudar da mesma forma que me tem feito.

Grande abraço e até a próxima.

Artigo também publicado em: http://bandodedados.com.br

   

Páginas do artigo
   1. VHost
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Capturando conteúdo de sites em PHP

Utilizando PHP para validar dados passados pelo usuário

Compactador de URL utilizando manipulação de diretórios do Linux com PHP

Inteligência Artificial com PHP e MySQL (parte I)

Criando sites para celular com WML

  
Comentários
[1] Comentário enviado por andrebian em 05/10/2013 - 11:12h

Gostaria de parabenizar pela iniciativa e dizer que visualmente achei o software muito intuitivo. Tenho uma pergunta a fazer: É necessária alguma versão específica do JRE/JDK? Possuo as versões 6 e 7 rodando em Debian 7 e com nenhuma rodou. Segue log de erros:

[code]
andrebian@debian:~/Desktop/Vhost$ java -jar VirtualHost.jar
Exception in thread "main" java.lang.UnsupportedClassVersionError: virtualhost/Visual : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: virtualhost.Visual. Program will exit.
[/code]

[2] Comentário enviado por salomaosantos em 05/10/2013 - 12:38h

André, obrigado pelo incentivo. Olha, eu também tenho as duas versões instaladas (JRE/JDK 6 e 7) no meu sistema (Ubuntu), e comigo funciona normalmente.
Pra te ser sincero, não testei em outra versões além destas duas, mas vou dar uma analizada aqui e te dou um retorno, ok... Abraço.

[3] Comentário enviado por andrebian em 05/10/2013 - 13:40h

Bem, só o fato de eu usar Debian já me barra de testar muita coisa nova he he he, Vou testar no meu note com o Ubuntu pra ver se rola.

[4] Comentário enviado por salomaosantos em 08/10/2013 - 21:02h

André, pelo que vimos aqui, rodou normalmente com as versões 6 e 7 do JRE, mas me parece que este erro que você postou indica uma versão abaixo da 6, e por isso, requer alguns ajustes no seu java, ex: update-alternatives --config java (pra selecionar a versão mais recente da tua máquina)...

[5] Comentário enviado por alysonpires em 09/10/2013 - 13:08h

Parabéns, brother. Realmente, não é nenhum bicho de 7 cabeças, mas fica fazendo isso toda hora é chato mesmo ! Uma mão na roda esse aplicativo/programa.

Parabéns novamente.

[6] Comentário enviado por salomaosantos em 10/10/2013 - 08:32h

Valeu Alyson... Abraço.

[7] Comentário enviado por jgama em 14/01/2014 - 18:34h

Puts estranho aqui, estou usando o ubuntu 12.04 e não consigo executar o site.

No meu caso eu crie uma intranet para ser executada só na rede local.

Nem mesmo usando a maquina local consigo acessa http://localhost/Site1/

Agora se tento assim pelo Browser file://var/www/Site1/index.htm é executada a intranet normalmente


Segue abaixo o arquivo criado pelo Vhost

<VirtualHost 192.168.0.4:80>

ServerName ccbsumare.local
ServerAlias www.ccbsumare.local
ServerAlias intranet
DocumentRoot /var/www/Site1/

<Directory "/var/www/Site1/">
##paramsBegin


##paramsEnd
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>

CustomLog /var/log/apache2/vhost.log common
ErrorLog /var/log/apache2/error_vhost.log
</VirtualHost>

O que tem que ser feito para funcionar pela rede local?

Editado: a solução foi bem rápida tive que fazer uma pequena alteração no /etc/hosts apontando para IP da maquina

192.168.0.4 ccbsumare.local


Abraço

[8] Comentário enviado por salomaosantos em 14/01/2014 - 22:16h

Boa jgama ... Abração.

[9] Comentário enviado por rgrsoares em 29/01/2014 - 20:19h

Pelo que vi é um ótimo programa. Mas serve para o apache 2.2! Para o 2.4.6 (no Linux Mint 16) não funciona devido a faltar a extensão .conf nos arquivos gerados em /etc/apache2/sites-available. É uma correção bem simples, que fico aguardando para testar e usar direto se der certo. PS: poderia alterar o apache2.conf em /etc/apache2 mas soa como gambiarra, aí prefiro a alteração do programinha para o apache 2.4.6!!!

[10] Comentário enviado por salomaosantos em 29/01/2014 - 20:42h


[9] Comentário enviado por rgrsoares em 29/01/2014 - 20:19h:

Pelo que vi é um ótimo programa. Mas serve para o apache 2.2! Para o 2.4.6 (no Linux Mint 16) não funciona devido a faltar a extensão .conf nos arquivos gerados em /etc/apache2/sites-available. É uma correção bem simples, que fico aguardando para testar e usar direto se der certo. PS: poderia alterar o apache2.conf em /etc/apache2 mas soa como gambiarra, aí prefiro a alteração do programinha para o apache 2.4.6!!!


Olá, rgrsoares

olha, venho trabalhando com ele no Ubuntu 13.10 (Apache 2.4), e não precisei fazer nenhuma "gambiarra"...
Apenas acrescento no campo "detalhes" a seguinte diretiva : Require all granted , com isto tudo funciona normalmente.

Abraço.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts