Ficheiro hostsSe é web­de­vel­oper e já faz free­lance há algum tempo, será quase uma aposta ganha ter con­hec­i­mento sobre este ficheiro e sobre o que faz. Se não for o caso e dese­jar ter os seus pro­jec­tos difer­en­ci­a­dos num servi­dor da sua máquina, é uma aposta certa que terá de saber o con­teúdo deste artigo para poder levar a cabo o seu objectivo.

Isto não é, nem dev­erá ser novi­dade para web­de­vel­op­ers expe­ri­entes, mas como estou ten­tado a seguir uma linha de raciocínio do zero aos cem, esta situ­ação tam­bém terá de ser coberta!

O que é o ficheiro HOSTS ?

O ficheiro Hosts con­tém os mapea­men­tos inter­nos de endereços IP para os nomes de servi­dores. Este ficheiro é car­regado em memória (cache) no ini­ciar do com­puta­dor. Nessa altura o Win­dows ver­i­fica o ficheiro Hosts antes de efec­tuar uma val­i­dação junto de qual­quer servi­dor DNS, o que permite-lhe efec­tuar um over­ride aos endereços no DNS pelos do ficheiro. Esta situ­ação previne aces­sos aos sites lis­ta­dos, redi­rec­cio­nando qual­quer ten­ta­tiva de lig­ação de volta para a própria máquina. Outra car­ac­terís­tica do ficheiro HOSTS é a de blo­quear out­ras apli­cações de efec­tuar lig­ação à Inter­net a par­tir de uma deter­mi­nada entrada, desde que a entrada no ficheiro exista. É uma prática cor­rente dos web­de­vel­op­ers de tes­tar local­mente os sites que desen­volvem, emu­lando o endereço orig­i­nal ao apontá-lo para outra local­iza­ção, sim­ples­mente alterando o ficheiro Hosts. Vamos explicar como defini-lo de maneira correcta.

Locais Comuns do ficheiro Hosts

O ficheiro hosts pode ser encon­trado em difer­entes locais den­tro dos difer­entes sis­temas oper­a­tivos e até em ver­sões de Win­dows diferentes:

* Win­dows NT/2000/XP/Vista: %SystemRoot%\system32\drivers\etc é o direc­tório por defeito, que pode ser alter­ado no reg­isto (reg­istry). O direc­tório actual é deter­mi­nado pela chave de reg­isto HKLM(HKEY_LOCAL_MACHINE)\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DataBasePath.
* Win­dows 95/98/Me: %WinDir%
* Linux e out­ros sis­temas oper­a­tivos do tipo Unix: /etc
* Mac OS 9 e ante­ri­ores: Sys­tem Folder: Pref­er­ences ou direc­to­ria Sys­tem (for­mato do ficheiro pode variar das vari­antes Win­dows ou Linux)
* Mac OS X: /private/etc (usa ficheiro de Hosts ao estilo BSD)
* OS/2 e eCom­Sta­tion: “bootdrive”:\mptn\etc

Edi­tando o ficheiro Hosts

Para Win­dows

  • Encon­tre o ficheiro “Hosts” no seu com­puta­dor:
    Win­dows 95/98/Me  c:\windows\hosts
    Win­dows NT/2000/XP Pro  c:\winnt\system32\drivers\etc\hosts
    Win­dows XP Home/Vista c:\windows\system32\drivers\etc\hosts (pode neces­si­tar de acesso admin­istrador para Win­dows NT/2000/XP/Vista)
    NOTA: Hosts é o nome do ficheiro hosts e não outro nome de direc­to­ria. Não tem uma exten­são (exten­sões são finais tipo .exe, .txt, .doc, etc.  aos ficheiros) e parece ser uma dirc­to­ria, nos exem­p­los acima. Pode até ter um ficheiro denom­i­nado “Hosts.sam”, mas este ficheiro é uma amostra (a exten­são .sam vem de sam­ple) e pode ser usado, bas­tando para isso remover a exten­são .sam para o nome do ficheiro ser sim­ples­mente “Hosts”. Este ficheiro deve ser edi­tado com um edi­tor de texto nor­mal, como o Notepad, e não com um proces­sador de tex­toand not a word proces­sor, como o Microsoft Word. Use o que nor­mal­mente usaria para edi­tar o seu texto, html ou ficheiros de código fonte. ( pode usar isto tam­bém:  notepad.exe C:\Windows\System32\drivers\etc\hosts )
  • Adi­cione esta linha ao ficheiro de Hosts:      121.0.0.1     www.omeuexemplo.com
  • Grave as suas alterações

NOTA: Esta alter­ação só irá fun­cionar, apre­sen­tando uma página visível se instalou o servi­dor web e este se encon­tra activo no seu com­puta­dor. Se ainda não o fez, ver­i­fique o artigo Como Insta­lar um servi­dor Web no seu PC. Para além disso, certifique-se que não está a usar nen­hum servi­dor de proxy para aceder à Inter­net (ver­i­fique as opções de Internet).

Se abrir uma página web para www.omeuexemplo.com, dev­erá reparar que irá abrir a página ini­cial do seu servi­dor web.

 Para Linux

  •  Edi­tar o ficheiro de hosts no seu sis­tema. O ficheiro hosts pode ser encon­trado em /etc/hosts.
  • Adi­cione esta linha ao ficheiro de Hosts:      121.0.0.1     www.omeuexemplo.com
  • Agora certifique-se que este ficheiro é usado para ver­i­fi­cações de nomes de servi­dores. Isto é efec­tu­ado em 2 ficheiros. O primeiro é : /etc/host.conf
    Este ficheiro deve ter pelo menos a seguinte linha escrita:      order hosts,bind
    Isto obriga que todas as ver­i­fi­cações de nomes de ficheiros passem pelo ficheiro de hosts antes de ir per­gun­tar ao DNS.
  • O próx­imo ficheiro é:      /etc/nsswitch.conf
    Este ficheiro é necessário para o pserver uti­lizar o que está definido no /etc/hosts. O nsswitch.conf dev­erá ter esta con­fig­u­ração para os servi­dores:
    hosts:      files nis­plus nis dns
    Será algo como acima ou semel­hante mas a palavra “files” deve vir em primeiro lugar.

Se abrir uma página web para www.omeuexemplo.com, dev­erá reparar que irá abrir a página ini­cial do seu servi­dor web.

NOTA: As con­fig­u­rações acima podem variar depen­dente das dis­tribuições de Linux que se utilizam.

Para Mac­in­tosh OS X

  • Para o Mac­in­tosh OS X, o pro­ced­i­mento é sim­i­lar ao Linux. O ficheiro de hosts pode ser encon­trado em /etc/hosts;

Espero que este artigo tenha ajudado.

Um abraço e tudo de bom,

0 comments