Maracujá: renovação 3
Neste terceiro artigo sobre a renovação do Maracujá irei finalmente falar sobre as alterações a nível de tecnologia que o servidor sofreu, bem como alguns pormenores sobre a sua implementação.
A alteração mais significativa foi o abandono da plataforma Zope 2.x, passando a utilizar Apache + Wordpress. A razão para esta mudança tão radical foi começar a usar uma plataforma de blogging já existente, mantida por terceiros e com algumas facilidades que não me estava a apetecer implementar na que eu tinha feito sobre Zope — fontes RSS para tudo e mais alguma coisa, um editor de artigos gráfico, possibilidade de guardar rascunhos de artigos, etc. A desvantagem é que eu conhecia a outra por dentro, ao pormenor, enquanto que desta nem a linguagem em que ela é programada (PHP) conheço. Isso não é muito importante, já que não tenciono fazer alterações ao Wordpress, mas tem o seu valor, como vim a descobrir quando quis criar um tema personalizado para este sítio. Felizmente, PHP embebido, tal como é usado na construção de temas do Wordpress, tem algumas semelhanças com coisas bem familiares, como HTML e C, e está bem documentado.
Assim, depois de procurar sem sucesso um tema que me agradasse, decidi-me por pegar num quase aleatoriamente e, martelando daqui, limando dali, transformá-lo em algo bastante semelhante ao aspecto do que estava a utilizar sobre Zope. Afinal de contas, para o navegador apenas vai HTML, CSS e Javascript — só temos de assegurar que o que lhe é enviado é o que queremos. Portanto, tirando a ocasional luta com o PHP e a sua forma estranha de interagir com o HTML, por comparação ao Python e ZPT que usava com o Zope, construir o tema Wordpress para o Maracujá até nem foi difícil. Para além do tema, ainda tive de fazer mais uma alteração ao Wordpress, afinar a sua tradução para português europeu, o que foi ainda mais simples, já que este usa uma norma bem conhecida e documentada para a internazionalização: GNU gettext.
A base de dados continua sobre MySQL e a importação dos artigos e comentários do antigo blog foi feita com um simples script Python que ainda adiciona as páginas estáticas, que tinha previamente copiado para um ficheiro de texto, já que no Wordpress estas também se encontram na base de dados. Reparei quando já tinha o novo sítio online que há um problema com a conversão da base de dados, ou melhor, com a diferente interpretação da ordem dos artigos entre o meu motor de blog e o Wordpress. Este último guarda duas datas, a de criação de cada artigo e a da última modificação, usando a primeira para ordenar os artigos. Já o Maracujá antigo guardava apenas a data da última modificação e usava o ID do artigo para a ordenação. Pensando bem, a forma do Wordpress faz mais sentido, mas agora já não havia muito que eu pudesse fazer quanto a isso, com cinco anos de artigos em arquivo sem a data de publicação. Assim, a fonte RSS do novo Maracujá tem a ocasional falha na ordenação dos artigos mais antigos.
Ainda no servidor web, adicionei também um wiki MoinMoin, mas apenas para uso privado da minha família.
Para além do servidor web e serviços agregados que menciono acima, o servidor tem também instalado os habituais servidores SMTP e IMAP, para o correio electrónico interno — continuo com o Postifx e Dovecot — e SSH para a administração remota — OpenSSH. O SSH também é uma forma simples de transformar um servidor remoto num servidor de ficheiros: tanto o Konqueror e o Dolphin, para KDE, como o Nautilus, em Gnome, conseguem abrir directorias remotas sobre SSH (usa fish://utilizador@servidor para os dois primeiros ou ssh://utilizador@servidor para o último). Se usasse máquinas Windows podia usar o WinSCP para o mesmo efeito mas, felizmente para mim, em casa já só há máquinas linux
Este servidor tem ainda uma impressora partilhada sobre IPP, graças ao CUPS, e um servidor DHCP para a rede interna.
Finalmente, para completar a lista de software usado no servidor, resta-me dizer que optei por usar Xubuntu desta vez, por achar que é um bom compromisso entre usabilidade (tem uma interface gráfica, que é bem mais simpática para a Sandra, quando tem de fazer de relé entre mim e o servidor sempre que estou longe, do que a CLI que tinha anteriomente) e eficiência do Ubuntu Server.
E assim termina esta série de artigos dedicada à renovação do Maracujá.




2 comentários:
Tenho seguido este artigos sobre a renovação do Maracujá! Eu também estou a fazer a renovação da minha página pessoal/blog e também estou a passar de um sistema feito por mim para Wordpress. O que mais me preocupa são os links antigos, mas penso resolver o problema usando o mod_rewrite do apache e rewite maps. Bom trabalho com a renovação!
Em relação às ligações do blog, resolvi-as de duas formas. A primeira foi logo durante a passagem dos artigos da base de dados antiga para a do Wordpress — o script que utilizei para o fazer reescreve todas as ligações para o Maracujá de forma a apontarem para os novos URL. Para além disso, existe também um script que redirecciona todos os pedidos vindos do exterior para as novas localizações através de um erro HTTP 301 (moved permanently). Penso que essa é a forma correcta de fazer as coisas, informando os programas clientes que a página pedida está num novo endereço.
Quanto às páginas estáticas, ficaram com os mesmos endereços, apesar de passarem também a estar na base de dados, coisa que não acontecia anteriormente. Apenas os ficheiros para download (documentos pdf, por exemplo) ficaram com endereços diferentes, resultando num 401 se a ligação for directa (ainda estou para colocar uma indicação com a nova localização desses ficheiros na página de erro).
[Fonte RSS dos comentários a este artigo]