← Arquivo

E se fosses dar banho ao... site? (Help here)

Lida 4453 vezes

Offline

Carlos Gandra 
Administrador
Mensagens 3081 Gostos 97
Feedback +1

Troféus totais: 34
Trófeus: (Ver todos)
Level 6 Super Combination Combination Topic Starter 50 Poll Votes 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4

Pessoal, escrevi agora este artigo um pouco à pressa, se tiverem tempo e quiserem dar uma ajudinha:

 - Identifiquem erros, sejam ortográficos ou de método;
 - Se me tiver esquecido de algo ou conhecerem outras/melhores dicas, digam-me, obviamente citarei quem colaborar.

Desde já agradeço :)



E se fosses dar banho ao… site?

As vantagens de manteres os teus sites e o teu espaço na Web limpo, optimizado e eficiente, são óbvias – umas mais do que outras – e não devem ser desconsideradas:
 - Maior segurança;
 - Maior performance;
 - Melhor uso dos recursos (disco, memória, cpu, tráfego, energia…);
 - Maior qualidade.

Dependendo da quantidade de dados que tens online e da optimização natural que já tenhas vindo a fazer, o “banho” pode ser mais curto ou mais longo, mas certamente benéfico para a “saúde” da tua presença online e dos projectos que tens em mãos.  Por isso, desta vez, deixa o cão sossegado e aponta o chuveiro (não literalmente) para o teu servidor.


1.   Limpeza no front-end
Lembra-te que os sites devem ser úteis para quem os visita e utiliza – os utilizadores. Além de um design limpo e eficaz, começa por remover o que não for essencial. Já aqui mencionei que se deve fazer uma limpeza a sério das nossas páginas, pensar menos em nós e naquilo que achamos ser bonito e passar a pensar mais no utilizador: aquilo é útil para ele? É útil para o site?

Se não for, o melhor a fazer é remover e utilizar esse espaço de uma forma mais eficaz. Em vez de plugins com as horas (eu sei que já disse isto, mas, é mesmo inútil) ou com as bandeiras dos visitantes, uma lista dos artigos recomendados, entradas mais recentes e os comentários (se aplicável) são uma melhor escolha.

Quanto mais limpa for a página, melhor comunicará com o utilizador e mais rápida será a abrir no browser Os motores de busca mais conceituados, como o Google, têm isto em conta nos seus algoritmos, o que é mais um factor demonstrativo da importância deste trabalho.


2.   Limpeza no back-end
Este ponto é particularmente direccionado para os CMS. Se utilizas Wordpress, Joomla, SMF e outros sistemas de gestão de conteúdos, é provável que tenhas diversos ficheiros que não necessitas.

2.1.   Plugins
Tal como eu e outros utilizadores temos vindo a aconselhar diversas vezes no nosso fórum, os plugins devem ser usados de uma forma razoável e inteligente. Apesar de existirem plugins / mods para um sem número de funções e aditivos, só uma pequena parte deles será útil a um determinado tipo de site. Instalar muitos plugins torna o site mais pesado, consequentemente lento e pode acrescentar falhas de segurança ao mesmo. Além disso, é conhecida a dor de cabeça que os plugins causam no upgrade dos scripts. Muitos deixam de funcionar, outros demoram a ser actualizados para as novas versões e alguns, nunca chegam a ser actualizados, havendo portanto quebra de funcionalidade.

Assim, deves começar por desactivar e desinstalar aqueles plugins que, na tua óptica, não são essenciais para cada site. Não vou avançar com um número recomendado de plugins activos, pois é um assunto bastante subjectivo e que certamente varia de site para site e de nicho para nicho, mas diria para tentares manter abaixo de 10 plugins por site.

2.2.   Themes
Muitas vezes, na tentativa de encontrares o theme certo para começares a trabalhar e personalizar o teu site, instalas e testas vários themes – o que não tem nada de mal – mas assim que encontras o “theme perfeito”, esqueces-te dos outros.

Procura remover os themes que não utilizas, libertando assim espaço em disco e eliminando aqueles que até, possivelmente, possam conter código malicioso.

Sobre este último ponto queria deixar também um pequeno alerta, que não deveria ser necessário, mas pelos casos que têm aparecido no fórum convém relembrar: sites que disponibilizam themes Premium (pagos) de forma gratuita, além da parte óbvia de estarem a cometer uma ilegalidade e ser um roubo, grande parte das vezes adicionam códigos manhosos nos mesmos, que podem ir desde links para sites que provavelmente não recomendarias, até scripts que permitem uma invasão facilitada no teu site. Arriscar toda a segurança – para não falar na credibilidade – do teu site para poupar 20€ ou 30€, é um disparate.

2.3.   Cache, Gráficos, CSS, JS…
Sempre que possível, utiliza a cache para servir de forma mais eficiente o site aos utilizadores. Alguns sistemas avançados de caching, como o W3 Total Cache para Wordpress, acrescentam ás [às] funções normais de page cache (que optimizam o uso do cpu, da memória e consequentemente da energia), as opções de minify dos ficheiros .css e .js, optimizando-os para um desempenho de maior performance. De qualquer forma e como estamos em limpezas, lembra-te: não há nada mais eficaz do que te livrares dos ficheiros que não precisas. Reduzir 10 ficheiros de javascript para 2 ou 3, é mais eficaz do que optimizares os 10.

Em relação aos gráficos do theme e as imagens que utilizas para ilustrar os artigos, procura comprimir os mesmos (jpg é uma opção de excelência), para uma abertura mais rápida, em particular aos utilizadores que não dispõem de uma ligação à Internet de alta velocidade.

É também boa prática moveres [mover] todas as imagens para um subdomínio. Os browsers carregam cerca de 4 ficheiros em simultâneo por cada endereço, pelo que as imagens irão abrir de forma mais rápida e em paralelo se estiverem noutro local. No caso de sites com alto tráfego, mover as imagens para um CDN é uma opção a considerar. Se utilizas scripts como o timthumb, infelizmente, as imagens dos artigos não podem ser movidas para outro local (as do theme continuam a poder).

Por último e ainda em relação ás [às] imagens, pegando no exemplo que dei no javascript, quando menos, melhor. Por isso, usa e abusa do css para diminuíres a necessidade de carregares gráficos. Coisas simples como substituir uma imagem de uma cor sólida pelo seu hex value no CSS, ou reduzires uma imagem cuja instrução é repetir-se a, por exemplo, 1 pixel, podem ter um grande impacto na velocidade do site.


3.   Limpeza no servidor
Provavelmente não imaginas a quantidade de lixo que podes ter no servidor. Um exemplo comum são os error logs.

3.1.   Error logs
Já me deparei com ficheiros destes que, em contas de alojamento com alguns anos, podem atingir 1 giga de espaço inteiramente inútil. Ou seja, é possível um error log ocupar mais espaço do que todo o teu site, levando-te eventualmente a alugares mais espaço no servidor sem necessidade.

Embora seja boa prática eliminar estes ficheiros, melhor prática do que isso é verificar quais são os erros e procurar corrigi-los. Por vezes podem ser insignificâncias sem impacto no site, outras vezes podem ser erros que estejam a afectar os utilizadores.

3.2.   Scripts sem uso
Muitas vezes instalamos scripts para testar, em directorias apenas do nosso conhecimento, mas quando deixamos de precisar deles, ficam no servidor abandonados. Instalações de CMS como SMF ou Wordpress abandonadas no servidor – portanto não actualizadas – constituem um risco elevado de segurança. Se continuas a precisar deles, procura actualizá-los regularmente e, se não necessitas mais deles, ou não lhes vais mexer por um longo período de tempo, considera removê-los, bem como as respectivas bases de dados.

3.3.   Ficheiros duplicados
Existe um CMS em particular, o SMF, que por cada instalação de um mod ou por cada actualização do próprio software, cria uma cópia dos ficheiros que foram alterados. Atenção que isto não é um erro e muito menos um problema, na verdade é uma função excelente que nos permite recuperar cópias de segurança com grande facilidade. Mas após a instalação e desinstalação de vários mods, vais ter no servidor várias cópias que já não são úteis. Encontras estes ficheiros em /Packages/backup (gzip com identificação e data), em /Sources (php~) e em Themes/default (php~).

Eventualmente outros CMS farão algo semelhante, mas não tenho conhecimento suficiente dos mesmos para poder dar instruções detalhadas.

3.4.   Bases de Dados
Após algum tempo de uso e de várias instalações/sites, é possível que tenhas bases de dados que já não são usadas. Se assim é e não precisas delas, podes eliminar as mesmas.

As Bases de Dados activas também podem ser optimizadas, no entanto tratam-se de procedimentos que requerem alguns conhecimentos e também muita atenção para não se cometer erros. Ao alcance de um utilizador comum, estão as opções de optimização presentes no phpmyadmin. Com um pouco mais de cautela, podem-se remover as tabelas sem uso, por exemplo de plugins que foram instalados e entretanto removidos, mas cujas entradas na base de dados permanecem intactas. No caso do Wordpress é possível também remover todas as revisões dos posts – existe um plugin para o efeito. Registos de erros, log de acções, entre outros (se aplicável), também podem ser removidas periodicamente e normalmente os CMS permitem fazê-lo de forma mais segura, sem ser em contacto directo com a BD.

3.5.   Registo de estatísticas
Se utilizas cPanel, provavelmente reparaste que tens mais de um programa de registo de estatísticas. Embora o mais indicado seja mesmo o Google Analytics, que não é acedido pelo cPanel, o Awstats é um programa de qualidade acima da média e que não vejo motivos para que não uses. Mas outros programas, como o Webalizer, não te serão muito úteis. Desactivar esses programas e remover os registos por eles criados ajuda-te a poupar, em alguns casos, centenas de megabytes em disco. Pede apoio ao teu serviço de alojamento caso tenhas dúvidas/problemas.


Falta Conclusão...

[Sugestão de algo a incluir: Boas práticas de manutenção regular podem evitar autênticas dores de cabeça, funcionando ainda de  forma preventiva, como vimos. É mais um passo essencial na boa organização de um projecto online.]
Offline

asturmas 
Administrador
Mensagens 19734 Gostos 50
Feedback +2

Troféus totais: 39
Trófeus: (Ver todos)
Mobile User Windows User Super Combination Combination Topic Starter 100 Poll Votes 50 Poll Votes 10 Poll Votes Poll Voter Poll Starter

Esta perfeito!
Adiciona só algo do género:

"Caso tenhas algum ficheiro error_log na tua conta de alojamento com uma data de alteração recente deverás o abrir e verificar a que se referem os últimos erros registados. Caso não os compreendas deverás entrar em contacto com a tua empresa de alojamento de forma a que te possam verificar a situação, pois existem erros que podem estar a provocar consumos de CPU e memoria ram acima do normal no servidor."
E podes indicar que as estatisticas antigas se apagam apagando a pasta correspondente ao mesmo presente na pasta /tmp

PS. eu ja vi uma conta a gerar 1GB de error_log NUM dia mas ok
Offline

Jerson 
Elite
Mensagens 2401 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2

Primeiro parágrafo:

"As vantagens de manteres os teus sites e o teu espaço na Web limpo, optimizado e eficiente, são óbvias – umas mais do que outras – e não devem ser desconsideradas:"

Ainda não tive tempo de ver tudo, essa alteração é só para não repetires "vantagens".

De qualquer forma, isso deveria ser colocado e devia ser dada uma vista de olhos pelo nosso revisor.
Offline

Jerson 
Elite
Mensagens 2401 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2

Agora estava a olhar para o artigo e lembrei-me de uma funcionalidade que o fórum tem e é bem porreira, podemos todos editar os posts uns dos outros. Eu sugeria que aqui no Labs nós tivéssemos carta verde para fazer isso, ou seja, fazíamos as modificações e correcções ao texto e gravávamos. Era muito mais prático e como fica sempre quem foi a última pessoa a editar até dá jeito.
Offline

Nuno 
Administrador
Mensagens 7780 Gostos 216
Feedback +2

Troféus totais: 42
Trófeus: (Ver todos)
100 Poll Votes Level 7 Search Mobile User Level 6 Super Combination Combination Topic Starter 50 Poll Votes 10 Poll Votes

Sim a ideia é essa, dai terem todos capacidade de moderação neste quadro ;)

Por isso não precisamos de ferramentas de project management ;)
Offline

Jerson 
Elite
Mensagens 2401 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2

Então eu vou dar uma olhadela no artigo, já posso editar "on the fly"?
Offline

Nuno 
Administrador
Mensagens 7780 Gostos 216
Feedback +2

Troféus totais: 42
Trófeus: (Ver todos)
100 Poll Votes Level 7 Search Mobile User Level 6 Super Combination Combination Topic Starter 50 Poll Votes 10 Poll Votes

Sim, se as permissões não estiverem erradas podes editar. Convém ir deixando é depois nas mensagens um histórico do que vamos alterando ou acrescentando.
Offline

JoseOliveira 
Membro
Mensagens 526 Gostos 4
Troféus totais: 30
Trófeus: (Ver todos)
Linux User Mobile User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

Cores diferente entre parêntesis rectos(?),... metodologia usada na revista p@p com o smf há uns tempos quando era membro activo da equipa de revisão.

Sim a ideia é essa, dai terem todos capacidade de moderação neste quadro ;)

Não tenho.
Offline

Nuno 
Administrador
Mensagens 7780 Gostos 216
Feedback +2

Troféus totais: 42
Trófeus: (Ver todos)
100 Poll Votes Level 7 Search Mobile User Level 6 Super Combination Combination Topic Starter 50 Poll Votes 10 Poll Votes

vou ver...

Verifica. Acho que agora está bem.
Offline

Jerson 
Elite
Mensagens 2401 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2

Dei uma vista de olhos, coloquei em bold o que editei, mas não mexi em praticamente nada.
Offline

Jerson 
Elite
Mensagens 2401 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2

Um "heads up" relativamente à revisão, isso é tarefa do Diogo Oliveira apenas. Nós podemos dar uma ajuda quando podemos, mas esa é uma tarefa dele.
Offline

Diogo Pinto 
Administrador
Mensagens 4400 Gostos 371
Feedback +4

Troféus totais: 37
Trófeus: (Ver todos)
Avatar Search Level 6 Linux User Mobile User Super Combination Combination Topic Starter 50 Poll Votes 10 Poll Votes

Um "heads up" relativamente à revisão, isso é tarefa do Diogo Oliveira apenas. Nós podemos dar uma ajuda quando podemos, mas esa é uma tarefa dele.

Ele anda muito ausente, há 4 dias que não aparece...
Offline

Jerson 
Elite
Mensagens 2401 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2

Ele anda muito ausente, há 4 dias que não aparece...

Ai é, mas é alguma ausência forçada e vai voltar ou já é uma carta fora do baralho? É que assim é preciso arranjar outro revisor. Mas pode ser que ele veja isso e venha cá dizer qualquer coisa.
Offline

JoseOliveira 
Membro
Mensagens 526 Gostos 4
Troféus totais: 30
Trófeus: (Ver todos)
Linux User Mobile User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

Verifica. Acho que agora está bem.

Sim já aparece.
Offline

JoseOliveira 
Membro
Mensagens 526 Gostos 4
Troféus totais: 30
Trófeus: (Ver todos)
Linux User Mobile User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

Edição incluída a azul...