09/02/2012

ad.

Como copiar um site inteiro no Linux

Todo mundo já passou pela tentação de querer copiar um site inteiro, seja por querer manter um conteúdo interessante de forma local ou pra fazer backup do seu próprio site.

No linux isso é muito fácil, basta utilizar o poderoso wget.

Instalação
Ele já vem instalado em boa parte das distros, mas se na sua não estiver, utilize um dos comandos abaixo:

Ubuntu/Debian
sudo apt-get install wget

Fedora/Red Hat/CentOS
yum install wget

Utilização
Todas as opção estão disponíveis no tradicional (wget –help) ou pelo man wget. Mas para fazer a cópia basta utilizar a opção -r (recursiva), ficaria assim:

wget -r http://www.endereco_do_site.com.br

Se o site exige login e senha utilize as opção –http-user e –http-passwd:

wget -r –http-user meulogin –http-passwd minha senha http://www.endereco_do_site.com.br

Importante: nem todos os sites utilizam autenticação via http (aquela que abre uma janela de login e senha do próprio navegador), alguns utilizam cookies ou flash pra isso. Assim, a solução acima não irá funcionar. Mas não se desespere, tente utilizar os cookies do seu navegador. Faça o seguinte

  1. Acesse o site com seu navegador favorito e faça seu login
  2. Localize o diretório onde seu navegador mantem os cookies. Para o Firefox, por exemplo, o endereço é ~/.mozilla/firefox/seu_id_de_usuario
  3. Utilize a indentificação do seu navegador e os cookies na linha de comando do wget:
    wget -U –load-cookies=~/.mozilla/firefox/seu_id_de_usario/cookies.txt http://www.endereco_do_site.com.br

Simples, não? Em próximo post vou entrar em detalhes da opção mirror e como converter páginas .asp, .php, .cgi, etc… em .html ao copiar o site.

comentários

3 comentários para “Como copiar um site inteiro no Linux”

  1. Rafael em 06/11/2008

    valew!

  2. Emannuel em 04/01/2009

    To esperando o próximo post, muito bom mesmo!!!!
    valeu cara

  3. raphael em 12/09/2010

    muito bom !!!

Deixe seu comentário