Servidor Web · 4 min read · Jan 07, 2026
Crie Seu Próprio Servidor Web Com BIND E Apache No CentOS 5 (Simplificado) - Página 2
Pulando novamente :) Desta vez um pouco mais longe, até a linha 1005, você deve ver:
NameVirtualHost *:80A diretiva NameVirtualHost informa ao Apache que queremos usar hospedagem virtual baseada em nome, ou em termos mais simples, um monte de sites todos usando o mesmo endereço IP. Adicione algumas linhas em branco abaixo de ‘#NameVirtualHost *:80’ e na linha logo abaixo coloque NameVirtualHost e seu nome de host ou endereço IP seguido de :80. O ‘:80’ significa que estamos usando hospedagem virtual baseada em nome para o protocolo HTTP.
Então você deve produzir algo como isto:
NameVirtualHost host.website.com:80Agora estamos quase terminando de configurar nosso arquivo httpd.conf. A única coisa que nos resta configurar é se alguém visitar nosso servidor usando o IP em vez do nome de domínio, devemos definir nosso nome de host padrão para ser visível por esses usuários. Podemos inserir isso no final do arquivo de configuração
ServerAdmin [email protected]
DocumentRoot /www
ServerName 77.77.197.69
ErrorLog logs/error_log
CustomLog logs/access_log common
Para manter nosso
httpd.conf
mais fácil de gerenciar, devemos adicionar esta linha no final do arquivo:
Include conf/vhosts/*.confSignificando que iremos incluir todas as entradas .conf de /etc/httpd/conf/vhosts onde armazenaremos os hosts virtuais para nossos sites à medida que os adicionamos. Será mais fácil de entender à medida que avançamos. Ok, estamos quase lá, salve httpd.conf e siga em frente.
Criando diretórios de sites
Agora devemos criar a estrutura de diretórios do site para gerenciar nossos sites adequadamente. Primeiro, vamos criar o diretório principal:
mkdir /wwwAgora estamos tornando root o proprietário de /www:
chown root.root /wwwAntes de prosseguir, precisamos fazer um ajuste, devemos adicionar uma zona para host.website.com em nosso named.conf porque a usamos como um nome de host em httpd.conf e teremos um erro se não fizermos isso. Então devemos adicionar isto ao named.conf
zone "host.website.com" IN {
type master;
file "/var/named/host.website.com.db";
};E, claro, abaixo está o conteúdo do arquivo:
/var/named/chroot/var/named/host.website.com.db$TTL 14400
@ 86400 IN SOA ns1.website.com. [email protected]. (
2008021501 ; serial, data de hoje+hoje
86400 ; refresh, segundos
7200 ; retry, segundos
3600000 ; expire, segundos
86400 ) ; minimum, segundos
host.website.com. 86400 IN NS ns1.website.com.
host.website.com. 86400 IN NS ns2.website.com.
host.website.com. IN A 77.77.197.69
localhost.host.website.com. IN A 127.0.0.1Você pode adicionar quantos registros desejar. Antes de reiniciar o named, faça um link:
ln -s/var/named/chroot/var/named/host.website.com.db /var/named/host.website.com.dbservice named restartAgora voltamos à estrutura de diretórios. Então, adicionamos uma zona para nosso
website.com
agora precisamos de um diretório virtual para ele.
cd /www
mkdir website.com
cd website.com
mkdir html
mkdir html/cgi-bin
mkdir databases
mkdir logs
Como criamos um diretório para nosso site, tudo o que precisamos é de um usuário que será legível para gerenciar este nome de domínio. Podemos fazer isso com:
useradd -d /www/your-domain/ domain_userou se você quiser restringir o acesso ao shell para o usuário, use isto:
useradd -d /www/your-domain/ -s /sbin/nologin domain_userDepois que o usuário foi adicionado, podemos modificar sua senha com:
passwdEsse usuário ainda não tem seu “lar” :) lugar que ele possui, agora adicionamos isto:
cd /www && chown domain_user:domain_user website.comSe você criar um diretório “databases”, então precisará mudar o proprietário para o usuário mysql, caso contrário, o MySQL não poderá escrever nos arquivos do banco de dados. Todos os diretórios, subdiretórios e arquivos relacionados a bancos de dados devem ser de propriedade do usuário mysql e podemos fazer isso com este comando:
cd website.com && chown -R mysql:mysql databasesCom isso, completamos a criação da estrutura de diretórios do site, agora a única coisa que resta a fazer é dizer ao Apache onde está nosso site e estamos todos prontos.
Agora vamos voltar um pouco quando estávamos configurando httpd.conf, inserimos uma linha lá:
Include conf/vhosts/*.confAgora você descobrirá por que fizemos isso, se ainda não souber. Como a pasta ainda não existe, devemos criá-la:
cd /etc/httpd/conf && mkdir vhostsAgora vamos para dentro do diretório vhosts:
cd vhostse criamos um novo arquivo para nosso domínio:
nano website.com.80.confDevemos inserir o seguinte neste arquivo:
ServerAdmin [email protected]
ServerName website.com
ServerAlias www.website.com
DocumentRoot /www/website.com/html
ScriptAlias /cgi-bin/ /www/website.com/html/cgi-bin/
ErrorLog /www/website.com/logs/error_log
CustomLog /www/website.com/logs/access_log combined
Finalmente chegamos ao ponto final agora, quando dissemos ao apache onde está o diretório do nosso site, agora cada solicitação do navegador para www.website.com será lida de /www/website.com/html; lá você deve colocar seus arquivos, ex: index.html. Agora podemos ligar nosso httpd, ou reiniciar se já estava ligado.
service httpd startou
service httpd restartSe você estiver enfrentando algum problema com este tutorial ou com a configuração do Apache ou do BIND, não hesite em me contatar. Tenho certeza de que tive esses e até piores problemas - ficarei feliz em ajudar no meu tempo livre.
Autor
: Emir Ibrahimbegovic
E:
[email protected]
W:
Agradecimentos a:
Tony Bhimani, Sébastien Wains, Nayyar Ahmad
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.