 Jefferson,  22 de abril de 2017, webmasterwork Nota: As colunas não aparecem se você estiver visualizando a versão mobile do blog.
16/02/2018: Como não houve manifestações a favor, o layout em colunas foi desativado.
[one_half padding=”0 20px 0 20px”]Como uns poucos talvez lembrem porque participaram da discussão, o blog tem uma largura de 800 pixels para os posts porque
- Eu decidi limitar meu layout a algo que pudesse ser visto em monitores de 1024×768, apesar de criar com um monitor de 1920×1080
- Permite exibir imagens com um bom tamanho sem ser preciso clicar nelas para dar zoom. Os restantes 224 pixels ficam para as barras laterais do blog;
Porém mesmo tendo me limitado a 800px eu sei que isso criou um problema: as linhas de texto ficaram longas, o que pode dificultar a leitura, principalmente em parágrafos com muitas linhas. Isso não me incomoda realmente mas eu não escrevo no blog para que eu leia. E tudo que atrapalhar meus leitores e eu puder mudar sem criar um incômodo para mim eu estou disposto a fazer.[/one_half]
[one_half padding=”0 20px 0 20px”]Eu instalei o plugin Column Shortcodes e estou experimentando com os resultados. O plugin não formata automaticamente todos os meus posts em colunas até mesmo porque acho que fazer isso automaticamente no tipo de blog que escrevo sem ficar uma bagunça está perto de ser impossível. Então eu estou adicionando a formatação em alguns posts selecionados, principalmente em trechos que parecem uma “parede de texto”. Eu ainda não estou bem certo de que fique melhor em colunas. No momento o único problema é que se a coluna da esquerda tiver mais texto que a coluna da direita o plugin bagunça a exibição do plugin de compartilhamento social (os links na parte inferior de cada post)
O que acham? [/one_half]
(Prefira clicar em "Responder" se estiver comentando um comentário)
 Jefferson,  22 de abril de 2017, webmasterwork Nota: Os QRCodes não aparecem se você estiver visualizando a versão mobile do blog.
Às vezes eu comecei a ler algo no desktop ou notebook e gostaria de continuar a leitura no celular ou tablet. No meu computador principal e usando o Palemoon/Firefox eu já tenho uma solução para isso na forma de um bookmarklet que quando clicado transforma o URL de qualquer página que eu esteja vendo em um código QR que eu posso “fotografar” com o Barcode Scanner.
|
|
javascript:%20var%20t=((window.getSelection&&window.getSelection())||(document.getSelection&&document.getSelection())|| (document.selection%20&&document.selection.createRange&&document.selection.createRange().text));%20if(t!='')%20 {location.href='http://chart.apis.google.com/chart?cht=qr&chl=%20'+t+'&chs=250x250';}%20else%20 {location.href='http://chart.apis.google.com/chart?cht=qr&chl='+escape(location.href)+'&chs=250x250';}; |
Isso foi sugestão de um leitor. Não consigo lembrar quem foi.
Mas às vezes eu estou usando o computador de terceiros ou outro browser e aí deixa de ser tão simples. Esta semana mesmo eu estava fazendo uma pesquisa de um produto no Mercado Livre no computador de um cliente e queria fazer uma pergunta ao vendedor, mas eu não gosto de fornecer credenciais em computadores que eu não controlo por isso queria abrir exatamente o mesmo produto no meu telefone e eu pensei: o ML deveria exibir QR codes dos itens.
E logo em seguida eu pensei que deveria fazer o mesmo no meu blog para facilitar a vida dos leitores.
Existem diversos plugins disponíveis para isso. Alguns tem características que considero reprováveis como conectar com o site do desenvolvedor para gerar o código e outros não sabem reconhecer páginas com múltiplos posts, como a inicial do blog, e assim exibem em cada post o mesmo código. É “um saco” “separar o joio do trigo”.
Após testar vários, no momento me decidi pelo QR Code Widget que obviamente tem suporte a widgets. Minha opção anterior foi pelo WP Page QR, que só exibe o código em páginas individuais e tem um modo automático, que gera o código mesmo nos meus posts antigos. Nada disso é realmente necessário quando o plugin tem suporte a widgets, já que cada widget só aparece mesmo uma vez por página. Note que o QR Code Widget não ativa (acusa um erro) se você tiver o WP Page QR ativo no mesmo blog.
(Prefira clicar em "Responder" se estiver comentando um comentário)
 Jefferson,  10 de novembro de 2015, webmasterwork Essa é fácil. Nem precisa ler o resto do meu texto: backup, backup, backup! De preferência de quantas gerações você puder!
O primeiro a notar o problema foi o amigo Saulo Benigno, que na manhã do dia 12 de outubro me mandou um email avisando que o site estava fora do ar. Eu havia atualizado o site horas antes por isso achei que fosse um glitch temporário da Hostgator e esperei. Mas como passaram-se horas e o problema persistiu, abri um ticket para o suporte e comecei a dar uma olhada. Como o indicador no cPanel estava dizendo que a Hostgator não faria mais backup automático do site porque eu havia excedido o limite de inodes (o número de arquivos), aproveitei para fazer uma arrumação. Foi aí que eu descobri que a coisa era séria!
Graças à ferramenta do cPanel que mostra um gráfico de uso do espaço em disco, eu localizei um diretório que tinha setenta e dois mil PDFs, nenhum deles colocado por mim. Todos com nomes suspeitíssimos. Olhando em outros diretórios comecei a achar arquivos txt com bravatas hacker do tipo “pwned” e “defaced by”, mais um punhado de arquivos que eu não havia colocado lá. A julgar pelos textos, eu tinha sido “hackeado” por uma cacetada de grupos de toda parte. Tinha russos, chineses, brasileiros…
Comecei a entrar em pânico. Não demorou para notar que o número de PDFs estava crescendo enquanto eu olhava. Eu estava sob ataque naquele momento! Desativei o site, enviei outro ticket para o suporte explicando o que eu havia achado e comecei a avaliar os danos.
Primeiro, não achei nenhum arquivo PHP obviamente infectado, nem indícios de comprometimento fora de Quick Talk. Depois comecei a notar um padrão estranho: nenhum arquivo depositado no site era do tipo executável. Só existiam arquivos TXT, PDF, ZIP (com vírus dentro), BMP, JPG… Alguns desses arquivos não eram válidos. Eram na verdade arquivos PHP com outra extensão que o invasor havia depositado ali na esperança de gatilhar uma vulnerabilidade. Mas como eles entraram?
Mais um pouco e percebi outro padrão: Os arquivos estranhos estavam limitados à pasta “uploads” da instalação wordpress de Quick Talk. Mas quem tinha permissão de upload além de mim?
Ahhhh… o mundo inteiro!
Eu percebi que os tipos de arquivo que estava encontrando batiam com a lista de arquivos “inócuos” que permiti aos leitores anexar em seus comentários. Algum dos plugins tinha uma vulnerabilidade que permitia que arquivos pudessem ser mandados para o meu site sem que nenhum comentário fosse produzido, daí eu não notei o problema.
Infelizmente tive que desabilitar esses plugins que instalei em 2012:
- Easy Comment Uploads <- provavelmente foi por este. Sequer pode ser encontrado hoje no repositório da WordPress;
- Comment Image Embedder <-Este caiu porque, pensando bem, também oferece risco.
O que deu trabalho mesmo foi apagar os 72 mil PDFs. Um gerenciador de arquivos do cPanel não conseguia lidar com tantos e travava. O outro não me permitia ordenar por tipo e eu corria o risco de apagar outros arquivos no meio. Sem conhecer outro jeito, tive que partir para a demorada e tediosa tarefa de apagar tudo por FTP. Isso levou horas!
No final o problema do site nada tinha a ver com o comprometimento. Foi pura coincidência a máquina que hospedava meu domínio estar com problemas (segundo o suporte) e por pura coincidência também eu estava olhando isso no momento em que colocavam os PDFs lá. Eram vários GB de arquivos. O meu site estava sendo usado simplesmente como hospedagem de malware e provavelmente estava sendo penalizado no ranking do Google por isso, embora a Google não tenha me enviado nenhum alerta pelas “ferramentas para webmasters”.
Voltando aos backups: Enquanto eu investigava pensei: “e se eu peguei outro worm como o que atacou o fórum anos atrás* e tiver que desinfectar centenas de arquivos PHP?” Fui procurar os meus backups e…
O último backup integral do site fora um ano atrás! Raios!
Eu tinha backup freqüente de bancos de dados, mas sem backup atualizado de arquivos combater um worm php ia realmente estragar minha semana!
Aprenda com meus erros! Você já fez backup do seu site esta semana? É Sturaro, estou olhando para você! 
*Isso aconteceu em maio de 2009. Curiosamente não consigo encontrar nenhuma referência a essa invasão em parte alguma, nem procurando no Google nem nas minhas anotações. Na época diversos fóruns baseados em SMF foram invadidos devido a um 0-day e o exploit era baseado em fazer o upload de uma imagem corrompida como avatar. A partir daí um worm obfuscado adicionava a si mesmo em todos os arquivos php que encontrava na conta, o que incluía todo e qualquer domínio hospedado nela. O exploit foi informalmente chamado de “Krisbarteo” por mim porque era o nome de usuário usado na invasão.
(Prefira clicar em "Responder" se estiver comentando um comentário)
 Jefferson,  06 de junho de 2011, webmasterwork Investigando o problema do plugin Social Connect.
Eu configurei um blog de teste e o plugin falha no teste de Mod Rewrite, que usa esse URL: https://ryan.com.br/blogseven/wp-content/plugins/social-connect/diagnostics/test.php?testing=http://www.example.com
Do jeito que está, dá FORBIDDEN
Então eu notei que sem o parâmetro não dava erro: https://ryan.com.br/blogseven/wp-content/plugins/social-connect/diagnostics/test.php?
Após algumas experiências eu descobri que o problema é o fato do parâmetro ser um URL!
Após uma rápida busca no Google, encontrei uma explicação:
http://stackoverflow.com/questions/1089744/403-forbidden-on-php-page-called-with-url-encoded-in-a-get-parameter
"It is mod_security's 10_asl_rules.conf causing this error."
Agora resta descobrir como contornar o problema em "mod_security"
(Prefira clicar em "Responder" se estiver comentando um comentário)
 Jefferson,  05 de junho de 2011, FaltamComentarios, webmasterwork Um dos requerimentos que eu defini para poder transferir meu blog principal para o WordPress e que me faz adiar isso até hoje é a necessidade de permitir que as pessoas se identifiquem usando contas que elas já tem em serviços populares como o Google e o Yahoo. No Geringonças e Gambiarras, por estar hospedado em um serviço pertencente ao Google, a autenticação com sua conta Google (criada por você estar cadastrado no gmail, orkut, etc) é praticamente automática. Eu sempre gostei dessa facilidade.
Não gosto de comentários 100% anônimos, mas também não me agrada a idéia de obrigar as pessoas a se cadastrarem no meu site. Isso pode parecer estranho em um mundo em que todo dia você encontra alguém querendo montar sua própria rede social e dificulta o acesso a informações obrigando-o a se cadastrar neste ou naquele serviço. Mas meu interesse nunca foi esse. Meu objetivo primário sempre foi partilhar conhecimento, de preferência numa via de mão dupla, e criar uma base de conhecimento sólida que devolva à internet tudo o que já aprendi com ela.
Voltando ao assunto dos requerimentos, no ano passado eu encontrei um plugin que permitia o logon fácil no wordpress usando Google e Yahoo (entre outros): O RPX (agora chamado Janrain Engage):
http://wordpress.org/extend/plugins/rpx/
Essa autenticação é muito simples. Se você já estiver logado no Google (por exemplo) o sistema de autenticação apenas pergunta se você deseja informar o endereço de e-mail da sua conta.
Mas um detalhe me desagradou. A autenticação era feita no servidor da Janrain e era para ele que a pessoa iria dizer o e-mail. Na época, após pesquisar muito, eu cheguei à conclusão que para fazer isso no meu site eu precisaria ter IP fixo e certificado SSL para poder fazer uma conexão HTTPS com o servidor da Google. E que então era por isso que a autenticação precisava ser feita no servidor da Janrain. Mesmo assim continuei não gostando e achei que seria melhor eu comprar meu próprio certificado SSL.
Hoje eu encontrei um plugin que faz a mesma coisa que o RPX, sem ter esse problema, o Social Connect:
http://wordpress.org/extend/plugins/social-connect/
Parece muito promissor, mas ainda tem bugs demais e o suporte é praticamente inexistente. O login quase funciona. A Google chega ao ponto de perguntar se quero partilhar o endereço de e-mail com “ryan.com.br“, mas ao voltar para o meu site dá um erro “Forbidden Access”. No fórum do autor várias outras pessoas reclamam a mesma coisa, sem resposta.
Então eu continuo procurando soluções para esse problema.
(Prefira clicar em "Responder" se estiver comentando um comentário)
 Jefferson,  01 de maio de 2011, Hostgator, webmasterwork Levei um baita susto na primeira hora desta madrugada. Um visitante do site deixou um comentário em uma de minhas páginas dizendo que não conseguia ver o link do download e quando fui checar descobri que todos os downloads do site havia perdido os links. Fui confirmar com o plugin que uso para gerenciar isso, o wp-filebase, e todos os 120 downloads registrados havia sumido.
Os arquivos continuavam no site. Era o banco de dados que havia perdido todo o “rastro” de cada arquivo. Parece coisa à toa, mas não é. Cada arquivo tem um ID, que por sua vez está conectado a um post específico, fora informações como descrição, autoria, etc. Eu ia levar dias para consertar isso e ainda havia informação que eu nunca iria recuperar: o número de downloads de cada arquivo.
Então eu pensei: “isso deve ter acontecido no último dia 27, quando o meu site passou a madrugada inteira perdendo contato com o banco de dados. Bastava eu restaurar o backup anterior ao dia 27 para consertar tudo.”
Mas minha surpresa se transformou em horror quando eu descobri que não tinha backup algum. Eu jurava que havia configurado um backup diário do site para a minha conta no gmail. Mas encontrei o backup desligado e nenhum arquivo na conta. Só meus outros backups (fórum e blog Sete Problemas) estavam lá.
Solicitar (e pagar) à hostgator uma recuperação do backup automático deles seria uma loteria, porque eu não tinha certeza de que o problema tinha mesmo começado no dia 27. E eles só mantém uma geração de backup, com no máximo uma semana.
Para a minha sorte, ainda havia uma esperança. Fui até o cPanel e rodei o “Repair Database”, que encontrou o problema e corrigiu.
É óbvio que agora ativei o backup do site e vou me certificar de que está funcionando. Preciso agendar também para a cada X semanas conferir se continua funcionando. Pior que não ter backup é acreditar que tem, sem ter, porque você acaba agindo de maneira irresponsável pensando: “se der m**da eu recupero fácil”.
(Prefira clicar em "Responder" se estiver comentando um comentário)
 Jefferson,  20 de março de 2011, webmasterwork Hoje um visitante acessou meu fórum usando o seguinte URL:
https://ryan.com.br/smf/index.php?topic=ftp://kchopita10:k2k2k2@ftp.xpg.com.br/test.php?
Esse evidentemente não é um URL válido do SMF e deve estar mal intencionado, querendo explorar uma possível falha no fórum.
Alguém sabe qual seria a provável intenção do sujeito com um URL assim?
(Prefira clicar em "Responder" se estiver comentando um comentário)
 Jefferson,  19 de março de 2011, webmasterwork Na minha constante luta para proteger meu trabalho dos spammers, ryan.com.br agora faz parte do Project HoneyPot.
http://www.projecthoneypot.org/

Liked by: Glauco Heitor, Cesar Machado
(Prefira clicar em "Responder" se estiver comentando um comentário)
 Jefferson,  23 de agosto de 2010, FaltamComentarios, webmasterwork Já faz meses que eu notei que meu site está apresentando problemas quando visualizado usando o Internet Explorer, mas quando eu tenho tempo, não me lembro do problema.
O sintoma é o seguinte:
+Usando o IE8, acesse https://ryan.com.br
+Aparecerá uma mensagem minha dizendo que você vai ser redirecionado.
+O IE8 vai tentar abrir a nova frontpage do meu site em https://ryan.com.br/wp/
+Vai aparecer a mensagem "Operação Anulada" e a página não será exibida.
Isso não acontece com todas as as instalações do IE. Neste exato momento eu estou no notebook de um cliente, usando IE 8.0.7600.16385 e o problema acontece. Mas é possível que outra pessoa com esta exata versão consiga seguir esses passos sem dar erro.
(Prefira clicar em "Responder" se estiver comentando um comentário)
 Jefferson,  13 de março de 2010, webmasterwork Estou testando o novo sistema de templates do Blogger, seguindo a dica de Rodrigo Ghedin:
http://www.meiobit.com/meio-bit/blog/blogger-estreia-novo-sistema-de-templates
A diferença mais importante para mim é que no novo sistema a largura das colunas é ajustável visualmente. Nos templates normais do blogger a largura da coluna esquerda é pequena demais para acomodar minhas imagens e editar manualmente o código do template para mudar isso requer muita paciência.
O G&G já está com novo template. Pelo menos eu me livrei daquele problema irritante da imagem de título deslocada para a direita.
Liked by: Luis Santos
(Prefira clicar em "Responder" se estiver comentando um comentário)
|
|
Com coluna fico com vontade de já ler a outra sem ter lido toda a primeira.
Prefiro texto sequencial.
Concordo com o Paulo. Sinceramente prefiro o formato sequencial também…
Sequencial é bem melhor mesmo. Fica confuso assim.
Mais um que prefere sequencial.
Também prefiro seqüencial, duas colunas fica com cara de jornal. Uma coisa que eu sinceramente não entendo em quem projeta esses templates de blog, é não deixar a largura semi-elástica.
Como isso funciona? Define-se na marra ma largura mínima e deixa a máxima ao bel prazer da tela do usuário. O template do meu, é assim, eu o modifiquei pra ficar dessa forma.
Tem uma pá de templates que define uma largura fixa e dane-se, se você tiver uma tela enooooorme, fica com uma coluninha de texto no meio e bordas dos dois lados.
Mesmo quando o template é elástico eu configuro para largura fixa. Eu acho que 800 pixels já deixa as linhas longas demais e quero ter uma razoável certeza de que a composição que estou fazendo vai ser a mesma que os leitores vão ver. Eu já fui surpreendido com blogs com layout elástico que ficaram uma bagunça e eu tive que ajustar minha janela de leitura para poder ver do jeito que presumivelmente o autor esperava que eu visse.
Nesse caso coloca-se um “breque” pra limitar a largura máxima também, vai que o sujeito tem um monitor com 50000 pixels de largura, ficaria uma única linha.
O que eu falo é isso aqui, no CSS:
min-width : 700px;
max-width : 1600px;
Ou seja, o frame visível não pode ficar menor que 700 pixel ou maior que 1600 pixels.
Jefferson, desculpe o off-topic, mas falando sobre esse negócio de colunas, ajustes automáticos, etc.: você tem alguma experiência com criação de sites? Contratamos uma empresa nova para criar nosso novo site. O antigo é em PHP mas da forma, digamos, “clássica”, “estática”, e o novo é para ser da forma que chamam de “responsiva” (ele se ajusta automaticamente em computadores, tablets, smartphones, etc.). Mas não estamos satisfeitos com o resultado que as coisas estão tomando. As imagens não se auto-ajustam bem, as tabelas que antes eu criava elas no editos do site tenho que agora criar elas e salvar como imagem para daí inseria nas páginas (senão bagunça a ordem das colunas no auto-ajuste, et.). Sabes algo sobre isso?
Infelizmente não posso ajudar. É justamente por entender muito pouco disso que eu uso o wordpress nos meus blogs.