Arquivos históricos do BR-Linux.org apresenta:

Como montar seu próprio site de notícias ;-)

Com as mudanças de layout dos últimos dias, diversos leitores me escreveram perguntando qual a ferramenta que eu utilizo para manter o site, e como fazer para criar um site deste estilo.

A maior parte dos sites de notícias sobre Linux utiliza ferramentas como o PHPNuke, PostNuke, Slash e similares, armazenando os dados em bancos MySQL, PostgreSQL ou similares. Eu tendo a fugir dessa camada adicional de complexidade, e por isso optei pelo Movable Type, que armazena seus dados sem precisar de bancos externos.

Há cerca de 6 meses escrevi um artigo sobre o assunto, inclusive ensinando a instalar o Movable Type (que na época estava na versão 2.11). Ele foi capa da edição 33 da Revista do Linux, mas eu republico aqui para facilitar o acesso - basta clicar ali embaixo, em DETALHES.

Weblogs
Augusto Campos - brain@matrix.com.br


O conceito de weblog tem estado em evidência, e em alguns círculos manter um
weblog (ou "blog") pessoal é uma maneira de mostrar-se atualizado. Os
weblogs pessoais funcionam como um misto de agenda, diário e mural, onde
cada indivíduo tem oportunidade de expor na Internet seus pensamentos,
idéias, atividades e o que mais desejar, sem censura, compromissos e até
mesmo sem precisar saber nada sobre a criação e administração de sites na
web, graças à profusão de sistemas públicos capazes de automatizar as
tarefas de criação, manutenção e publicação de weblogs pessoais.

Entretanto, a idéia de weblog é muito mais ampla do que a simples publicação
de mensagens pessoais. De fato, a definição típica do termo é bem diferente
disso; já em 1999 um artigo precursor publicado pela revista Salon
explicava: weblogs são web sites pessoais, mantidos por indivíduos ou
pequenos grupos, que compilam listas de links para matérias de interesse em
outros sites, entremeados a editoriais, informações adicionais e pontos de
vista pessoais. Um bom weblog é atualizado com frequência, dando a impressão
(se não a realidade) de um noticiário em tempo real, apontando eventos,
páginas e histórias interessantes. As novidades flutuam no alto da página, e
o conteúdo antigo vai descendo lentamente para o fundo.

Talvez você nunca tenha pensado neles dessa forma, mas sites como o
Slashdot.org, Linuxtoday.com, PontoBr.org, Gildot.org e o até o meu
Linux.trix.net são exemplos típicos de weblogs, pois são coleções de links
para notícias e artigos de outros sites, "recheadas" com comentários
adicionais e temperadas com a interação da comunidade de leitores através
dos mecanismos de comentários, fóruns e chats.

Esse tipo de sumário de notícias existe desde muito antes do surgimento da
web, mas foi a Internet que deu a um gigantesco número de pessoas a
possibilidade de criar e manter seu próprio serviço de clipping, dando
margem assim ao surgimento de centenas de sites cujo nicho é
apontar e comentar notícias encontradas em outros locais da Internet,
geralmente dentro de um tema ou escopo limitado.

O primeiro weblog foi também o primeiro website (http://info.cern.ch/),
criado pelo próprio inventor da WWW, Tim Berners-Lee. Já naquela época ele
sentia que havia necessidade de escrever sobre as novidades que iam surgindo
na então pioneira rede.

Se bem divulgados e mantidos, os weblogs acabam por formar uma comunidade em
torno de si, e ganham vida própria - a própria comunidade passa a fornecer
conteúdo, indicando notícias e as comentando, num ciclo virtuoso que pode se
prolongar indefinidamente, onde todos ganham - os leitores se informam,
participam e convivem (ainda que virtualmente) com outras pessoas de
interesse comum; os mantenedores do site criam valor (na forma de informação
atualizada e sintetizada) para a comunidade, expõem para o mercado seu
conhecimento sobre seu campo de atividade, e ainda podem ter ganhos
financeiros com a popularização do seu site, ainda que muitas vezes não seja
este o objetivo principal.

Por outro lado, o efeito definha e morre rapidamente se for cometido o
grande pecado do mantenedor de weblogs: a falta de atualização. Não importa
a qualidade do seu trabalho - se os leitores puderem obter sua informação de
modo mais atualizado consultando outras fontes, eles acabarão optando por
isto - ou, dependendo do seu espírito empreendedor, acabarão fundando outro
weblog.

Assim, se você tem ou pensa em fundar um weblog, tome um cuidado
fundamental: opte por uma ferramenta de gerenciamento que torne a tarefa
simples e prática, permitindo postar as novidades rapidamente e sem grande
complicação, de forma a não se tornar um obstáculo à atualização frequente
do seu site.


Selecionando uma ferramenta

Muitos weblogs surgem de maneira espontânea, sem grande planejamento, e
acabam utilizando a ferramenta que estiver mais à mão no momento, ou acabam
dando razão ao surgimento de um novo mecanismo de publicação. Entre os mais
populares weblogs em português sobre Linux, podemos citar alguns exemplos
desta afirmação: o PontoBR.org utiliza um sistema de publicação desenvolvido
por seu próprio autor, e o Linux in Brazil (linux.trix.net) utilizou durante
anos um sistema desenvolvido por mim mesmo.

Entretanto, ao utilizar seu próprio sistema de publicação, você logo se verá
dividindo seus recursos e seu tempo entre a manutenção da ferramenta de
publicação e a efetiva publicação de artigos e notícias. Por mais que seu
sistema seja isento de bugs, você verá que os outros weblogs e portais
começarão a oferecer recursos não previstos no seu projeto original (e falo
por experiência própria!), e terá que optar entre implementá-los ou
simplesmente não acompanhar as tendências da web que, como todos sabemos, é
extremamente mutável e evolutiva.

Felizmente, existe um grande número de ferramentas prontas para quem quer
montar um weblog ou um portal. Algumas são repletas de recursos e firulas,
outras se resumem ao básico: servir de infra-estrutura para a postagem e
exibição de artigos e notícias no seu site. Vamos analisar alguns deles:

O PHP-Nuke (phpnuke.org) oferece recursos avançados: cadastro de usuários,
possibilidade de comentários nas notícias, administração via web, pesquisas
e votações, temas, moderação, geração de backend (RDF/RSS), gerenciamento de
downloads, gerenciamento de FAQs, newsletter. É feito em PHP, e precisa do
Apache e de um banco de dados (mySQL, PostgreSQL, Adabas, mSQL e outros).
Exemplos de sites nacionais criados com o PHPNuke são o
www.underlinux.com.br e o www.404notfound.com.br.

O PostNuke (postnuke.com) surgiu como uma dissidência do PHP-Nuke 5.0, e tem
a reputação de ter melhor suporte ao usuário, e mais estabilidade. Suas
características são semelhantes aos do PHP-Nuke, mas a filosofia é
diferente: um núcleo comum pequeno, e características adicionais definidas
em módulos instalados conforme necessário. Para instalar em um servidor
Linux, você precisa do Apache, PHP e MySQL pré-configurados. Um exemplo de
site nacional baseado no PostNuke é o http://www.univates.br/taquarix

O Slash (slashcode.com) é o sistema de publicação utilizado pelo
Slashdot.org, possivelmente o weblog mais popular no mundo da tecnologia.
Além deste cartão de visita, ele ainda conta com a vantagem de possuir seu
próprio livro, lançado pela editora O'Reilly (veja em
http://safari.oreilly.com/main.asp?bookname=runblogslash). Ao contrário dos
dois anteriores, feitos em PHP, o Slash é baseado no Perl e no mod_perl,
além do Apache e do MySQL. As características também são semelhantes às do
PHP-Nuke. Um site em português baseado no Slash é o gildot.org.

O Zope (zope.org) é também bastante popular e, como o Slash, conta com seu
próprio livro (www.zope.org/DocProjects/Book). O Zope inclui seu próprio
servidor web, a sua própria base de dados orientada a objetos (com
integração opcional a bancos relacionais) e tudo o mais que você precisa
para criar um portal completo e funcional, ou outros tipos de aplicações
baseadas em web. Mas nada impede que ele seja usado para criar um weblog de
notícias ou até mesmo um blog pessoal, desde que a complexidade adicional
não seja encarada como um obstáculo, e sim como um desafio - neste caso, não
deixe de avaliar o Squishdot.org, e visitar um exemplo nacional em
www.linuxplace.com.br.

O MovableType (movabletype.org) foi uma agradável surpresa: contendo os
recursos básicos das principais ferramentas de manutenção de weblogs, ele
dispensa a presença de um servidor SQL (MySQL, PostgreSQL, etc.),
organizando seus dados através do módulo DB_File da linguagem Perl. Esta
característica foi o que me levou a optar por esta ferramenta para o Linux
in Brazil, quando me cansei de manter minha própria ferramenta de
publicação. Infelizmente o MovableType ainda não é um software livre - ele é
gratuito para uso não comercial, mas seu código não pode ser alterado e
redistribuído. Se você vier a utilizá-lo, não se esqueça de escrever para os
autores sugerindo uma mudança na forma de licença ;-) Exemplos em português
de uso do MovableType são o linux.trix.net e o valkyrie.com.br/blog - o
local onde primeiro tomei conhecimento desta ferramenta.

Além desses, há uma série de ferramentas de menor porte, mas que podem ser
as mais adequadas, dependendo das suas necessidades. Verifique o Scoop
(scoop.kuro5hin.org), o MP Personal Weblog
(www.kyne.com.au/~mark/software/weblog.php), o bplog
(bplog.blackplasma.net), o B2 (cafelog.com), o GeekLog
(geeklog.sourceforge.net), o Pivot (www.mijnkopthee.nl/pivot), o TinyBlog
(sieve.net/TinyBlog - dispensa SQL!) e o DiaWebLog (diaweblog) com sua
exclusiva interface via IRC.

Se tudo o que você quer é montar um blog pessoal ou um diário online, você
pode também utilizar ferramentas disponíveis na própria Internet, sem a
necessidade de instalação de softwares no seu servidor - de fato, você não
precisa nem ter um servidor, pois muitos destes serviços hospedam
gratuitamente o seu conteúdo. No Brasil, você pode criar seu conteúdo no
www.weblogger.com.br. Se preferir, utilize o equivalente internacional -
www.blogger.com - lembre-se de que você pode editar via Blogger e publicar
no seu próprio site ou domínio, utilizando os recursos de transferência via
FTP desta ferramenta.


Instalando o MovableType

O MovableType (ou MT) 2.11 foi escolhido para o tutorial desta edição
porque, ao contrário das demais ferramentas, todas as suas dependências são
instaladas por padrão na maior parte das distribuições. Para usá-lo,
basicamente você precisa ter um servidor web Apache instalado e configurado,
e a linguagem Perl (versão 5.004_04 ou superior) com a biblioteca DB_File
(que é instalada junto com o Perl na maior parte das distribuições).

Vamos considerar que seu servidor web chama-se www.exemplo.com e armazena os
documentos no diretório home/webmaster/htdocs, e que o diretório de scripts
está localizado em home/webmaster/cgi-bin. Você precisa ter acesso de
escrita a ambos. Vamos considerar também que você tem acesso à shell (ssh,
telnet ou console) do seu servidor - mesmo sabendo que é possível instalar o
MT ainda que você só tenha
acesso ftp.


Passo 1 - Descompactando e criando diretórios

Em primeiro lugar, em um diretório de trabalho qualquer, descompacte o
arquivo de instalação obtido em www.movabletype.org/download.shtml:

tar zxvf MT-2.11.tar.gz

Isto vai criar o diretório MT-2.11 contendo todos os arquivos do MT. Vamos
editar alguns destes arquivos, e depois transferi-los para os diretórios do
seu servidor web. Portanto, crie agora os três diretórios do MT na área do
servidor:

mkdir /home/webmaster/htdocs/MT
mkdir /home/webmaster/cgi-bin/MT
mkdir /home/webmaster/mt-db

O terceiro diretório é onde o MT irá criar suas bases de dados. A
documentação pede que você dê permissão total a ele ('chmod 777
/home/webmaster/mt-db'), mas se você tem consciência dos aspectos de
segurança envolvidos, talvez prefira dar permissão apenas ao usuário que
roda os scripts do seu servidor web.


Passo 2 - Arquivo de configuração

Você precisa alterar alguns detalhes no arquivo de configuração do MT,
portanto entre no diretório MT-2.11 criado no momento da descompactação e
abra no seu editor preferido o arquivo mt.cfg. Nele, altere as seguintes
linhas:

CGIPath http://www.exemplo.com/cgi-bin/MT/
DataSource /home/webmaster/mt-db
StaticWebPath /MT/

A primeira linha contém a URL completa do diretório do MT na área de scripts
do seu servidor web. A segunda contém o diretório criado para armazenar os
seus dados, e o terceiro contém a URL relativa para o diretório do MT na
área de documentos (htdocs) do seu servidor web. Não altere nenhuma outra
linha do arquivo, e salve-o.


Passo 3 - Transferência dos arquivos

Você pode utilizar seu gerenciador de arquivos preferido, mas nosso exemplo
vai se basear no tradicional comando cp. Entre no diretório MT-2.11 criado
no momento da descompactação e execute:

cp -R * /home/webmaster/cgi-bin/MT/
cp -R images/ docs/ styles.css /home/webmaster/htdocs/MT/


Passo 4 - Configuração

Abra um navegador web e acesse a URL
http://www.exemplo.com/cgi-bin/MT/mt-load.cgi para disparar o script que
cria os arquivos iniciais no seu servidor web. Você deverá ver algo como:

Loading initial data into system...
Loading blog...
(...)
Mapping templates to blog archive types...
Mapping template ID '10' to 'Daily'
Mapping template ID '12' to 'Individual'
(...)
Done loading initial data!
All went well.

Após isto, *apague* o arquivo mt-load.cgi, através do seguinte comando:

rm /home/webmaster/cgi-bin/MT/mt-load.cgi

Agora é a hora de verificar se você tem todas as bibliotecas Perl utilizadas
pelo MT. Felizmente, ele mesmo inclui um script capaz de fazer isto por
você, basta acessar a URL http://www.exemplo.com/cgi-bin/MT/mt-check.cgi e
ver o relatório. Note que são duas seções, uma sobre módulos obrigatórios, e
outra dos opcionais. Com um pouco de sorte, você vai ter todos já
instalados.

No meu caso, eu dispunha de todos os módulos obrigatórios, menos o
Image::Size. O relatório me indicou isso claramente:

Image::Size...
Your server does not have Image::Size installed. Image::Size is
required for file uploads (to determine the size of uploaded
images in many different formats). Please consult the
installation instructions for help in installing Image::Size.

Como no caso dos demais módulos Perl (com exceção do DB_File) necessários
para o uso do MT, eu não precisei instalar o módulo globalmente (em outras
palavras, não precisei de poderes de root) - as instruções de instalação do
MovableType ensinam como instalar os módulos no próprio diretório do MT,
apenas para uso por este sistema. Para ilustrar, descrevo como instalar o
Image::Size - o procedimento para os demais módulos é similar, e as
instruções (e links para download) constam no manual de instalação do MT.

Após fazer o download do arquivo Size.pm (seguindo o link do manual de
instalação), criei o diretório de extensão do MT e, dentro dele, o diretório
da biblioteca desejada, sempre conforme as instruções. Em seguida, copiei
para lá o Size.pm (dependendo do módulo, pode ser necessário fazer uma
descompactação antes, e copiar apenas os arquivos indicados no manual). Veja
os comandos, lembrando-se de que minúsculas e maiúsculas fazem diferença:

mkdir /home/webmaster/cgi-bin/MT/extlib
mkdir /home/webmaster/cgi-bin/MT/extlib/Image
cp Size.pm /home/webmaster/cgi-bin/MT/extlib/Image

Depois da instalação dos módulos faltantes, acesse novamente a URL do
mt-check.cgi, e você deverá ver a nova situação. Se tudo estiver correto,
você deverá ver essa mensagem ao final do relatório:

Your server has all of the required modules installed; you do not need to
perform any additional module installations. Continue with the installation
instructions in the section "Setting up your Blog Directories".

Agora está tudo pronto, podemos criar nosso primeiro weblog.


Criando o primeiro weblog

Seu weblog precisará residir em um diretório da área de documentos (htdocs)
do servidor web. Para nosso exemplo, vamos criar um diretório chamado weblog,
diretamente no diretório htdocs, e setar suas perissões de acordo com o
determinado na documentação do MT:

mkdir /home/webmaster/htdocs/meuweblog
chmod 777 /home/webmaster/htdocs/meuweblog

Dica: Se você se importa com a segurança do seu sistema, mude estas
permissões de forma que apenas o usuário que roda os scripts CGI do seu
servidor web possa escrever neste diretório.

Agora que o espaço está criado, você já pode acessar o MT para criar seu
weblog. Abra o navegador e acesse a URL do script mt.cgi - no nosso exemplo,
http://www.exemplo.com/cgi-bin/MT/mt.cgi

Na primeira conexão, o sistema pedirá um login e uma senha. O manual explica
que inicialmente existe um usuário chamado Melody cuja senha é Nelson
(atenção para as maiúsculas). Identifique-se com este login e senha, para
ser levado à tela básica do MT (figura 1).

Sua primeira tarefa, absolutamente necessária, é utilizar a opção Edit your
profile para mudar seu login (a não ser que você se chame Melody ;-) e
senha. Não deixe a senha padrão, é muito arriscado.

Agora vamos criar nosso primeiro weblog do MT. No menu principal, selecione
Create New Blog, e preencha a tela de criação de acordo com a Figura 2. Em
seguida pressione Save, e faça um Rebuild (esta opção cria ou recria todos
os arquivos do seu weblog, e pode ser acessada a partir do menu localizado à
esquerda na sua tela).

Feito isto, você já pode acessar seu weblog através da URL definida na sua
criação (no nosso exemplo, http://www.exemplo.com/meuweblog/). Ele vai estar
vazio, sem graça - é hora de colocar a primeira notícia ou história. Em
primeiro lugar, acesse a opção Categories e crie algumas categorias de
entradas para o seu weblog. Alguns exemplos de categorias comuns são:
Notícias, Diário, Notas...

Agora selecione a opção New Entry, para editar a notícia em si. Preencha a
tela conforme a Figura 3; atenção para o significado dos campos - todos
dispõem de help para o preenchimento. O campo Post Status é muito
importante: se você selecionar Draft, a sua entrada será salva mas não será
publicada, ficando disponível para edição posterior; se você selecionar
Publish, a entrada será imediatamente publicada no weblog - mas permanece
disponível para edição posterior, através do menu Edit Entries.

Após salvar sua entrada, carregue novamente o weblog - você deverá ver algo
semelhante à figura 4.


Voando mais alto

Através das opções Templates e Blog Config (lembre-se de clicar no link
Preferences) você pode personalizar completamente o seu weblog, traduzir as
mensagens, mudar o layout, cores, e tudo o mais. Veja o Manual do Usuário
(http://www.movabletype.org/docs/mtmanual.html) para saber tudo o que é
possível em termos de customização.

A partir deste momento, tudo o que você precisa é encontrar material para
suas notícias, e formar sua comunidade de leitores/colaboradores. Com sua
instalação do MT você pode gerenciar múltiplos weblogs, e cadastrar inúmeros
usuários, cada um com poderes e restrições específicos. Forme sua equipe,
e comece a blogar!


Para saber mais

A história dos weblogs: http://newhome.weblogs.com/historyOfWeblogs

Documentação do MT: http://www.movabletype.org/user.shtml

Instalação do MT: http://www.movabletype.org/docs/mtinstall.html

Manual do usuário MT: http://www.movabletype.org/docs/mtmanual.html


Postado por brain em 06 de abril de 2003, 10:36 PM

Comentários

Vi um outro tipo de site para notícias chamado XMLNuke, implementado em 3 linguagens diferentes: Java, ASP e PHP. Os códigos dos dois primeiros já estão disponíveis, o de PHP ainda não. O armazenamento é todo por XML, não necessita de banco de dados. E melhor, foi escrito por brasileiros: http://xmlnuke.sourceforge.net/index.index.pt-br.offline.html

PS: Não testei ainda, mas farei isso logo.

Postado por: Flavio Machado em abril 7, 2003 01:52 AM

O XMLNuke recebeu destaque aqui no site na quinta-feira passada (http://www.linux.trix.net/news2/007000.html).

Não mencionei nesta notícia porque de fato ele não é um dos mais usados. É novo ainda, mas acho que ele chega lá :)

Postado por: Augusto Campos em abril 7, 2003 09:04 AM


O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação) notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter histórico, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.