Neste guia prático vou ensinar como migrar seus e-mails utilizando iMAP de um servidor para outro. A mudança de hospedagem muitas vezes dá mais trabalho na questão dos e-mails do que na migração do site em si. Agora você vai ter um script para te ajudar nessa tarefa árdua.
Continue lendo “[Linux] Migrando e-mails de um servidor para outro utilizando imap”Autor: Frederico de Castro
[Linux] Deletando uma pasta com muitos, muitos arquivos
As vezes nos deparamos com uma situação onde temos milhares de arquivos em uma pasta e precisamos elimina-los. Estive em uma situação como essa quando em uma loja feita em Magento a pasta var/sessions estava lotada de arquivos, onde não estava apenas prejudicando a performance da loja, mas também começou a prejudicar o funcionamento do Linux em si e impedir que novas sessões fossem abertas.
Continue lendo “[Linux] Deletando uma pasta com muitos, muitos arquivos”Instalando o PHP 5.6 no Ubuntu 16.04 (Xenial)
Se você estiver em uma distribuição Linux onde o PHP a ser instalado por padrão é o 7.0+, então esse tutorial vai resolver seus problemas.
Continue lendo “Instalando o PHP 5.6 no Ubuntu 16.04 (Xenial)”Git Push via SSH
Tutorial objetivo e rápido. Não entrarei em detalhes.
1 – Criar a chave SSH:
ssh-keygen -t rsa -b 4096 -C "seuemail@gmail.com"
– Pode dar enter nas 3 perguntas sem responder nada.
2 – Adicionar ao ssh-agent:
ssh-add git-rsa
Se não funcionar use esse:
ssh-add ~/.ssh/id_rsa
Se também não funcionar é porque o ssh-agent está desativado. Ative com esse comando:
eval $(ssh-agent)
Depois tente o primeiro comando desse passo 2 novamente.
3 – Adicionar a chave nas configurações do seu github:
– Acesse https://github.com/settings/keys
– Clique em [New SSH Key]
– Digite um nome qualquer e cole no campo de texto o conteúdo do arquivo id_rsa.pub (que é sua chave pública)
4 – Configurando seu usuário e e-mail no git
Primeiro certifique-se de estar na pasta anterior à pasta do git
cd ~
Agora configure:
git config user.name "seu-usuario"
git config user.email "seuemail@gmail.com"
Se der algum erro ao digitar esse comandos tente isso primeiro:
mkdir ~/.git
Depois tente configurar novamente.
5 – Testar a conexão
ssh -T git@github.com
Você deverá receber um aviso assim:
[code]Hi seu-usuario! You’ve successfully authenticated, but GitHub does not provide shell access.[/code]
Se for isso deu tudo certo.
6 – Clonar o repositório:
https://github.com/seu-usuario/seu-repositorio.git
7 – Se clonou por HTTPS (como fiz acima), você precisará configurar o git origin para ser SSH ou ele te pedirá pelo e-mail e senha.
git remote set-url origin git@github.com:seu-usuario/seu-repositorio.git
8 – Pronto, depois disso é o de sempre:
git add . git commit -am "comentário" git push origin
Postando em uma Página do Facebook com PHP (CURL)
Obs: Tem um vídeo no final do post onde ensino tudo isso.
Resolvi criar esse tutorial para ajudar pessoas que precisam publicar um texto ou link em uma página do Facebook.
Exemplo de utilização: você tem um site e quer que logo após postar uma notícia que ela seja seja compartilhada no Facebook em forma de link para trazer leitores pro seu site.
Minha motivação para esse tutorial foi que depois de perder horas pesquisando na internet e na documentação do Facebook, descobri que é simples fazer isso sem o SDK deles.
Primeiro, temos que pegar o token de acesso para o local em que desejamos postar, seja na timeline de uma pessoa ou de uma página.
Nesse exemplo vamos publicar em uma página, mas o procedimento para publicar em uma timeline de pessoa é ainda mais simples, abordarei isso rapidamente no vídeo do final.
Acessamos o seguinte link para pegar o token:
https://developers.facebook.com/tools/explorer/
Primeiro selecionamos o app que será utilizado.
Em seguida clicamos em “Get token” e depois em “Get user access token”, e na janela que se abre marcamos uma dessas opções: manage_pages e publish_stream.
Após marcar as opções clicamos em “Get Access Token”.
Nas telas seguintes autorize o que o Facebook perguntar.
Segundo passo é pegar o ID da página desejada.
Clique novamente no botão “Get Token” e note que agora ele mostra todas as páginas que você tem acesso, selecione a desejada e clique no botão azul Submit.
Isso exibirá o ID da página, copie ele e também o “Access Token” que fica no input acima (o access token tem validade curta, no vídeo ensino como pegar um de maior duração).
Com essas duas informações vamos ao código necessário:
Obs.: caso não tenha o CURL instalado, clique aqui.
<?php $page_access_token = 'XXXXXXX'; $page_id = 'YYYYYYYY'; // E as informações do que será postado. $data['picture'] = "http://www.exemplo.com/imagem.jpg"; $data['link'] = "http://www.seulink.com.br/"; $data['message'] = "Mensagem (opcional)"; $data['caption'] = "Legenda (opcional)"; $data['description'] = "Descrição do link (opcional)";
Na verdade todos os campos acima são opcionais desde que ou o link ou o message estejam presentes.
Para mais informações aqui está a documentação: https://developers.facebook.com/docs/reference/api/post/
Continuando…
$data['access_token'] = $page_access_token; $post_url = 'https://graph.facebook.com/'.$page_id.'/feed'; // E pra finalizar fazemos o post para o Facebook: $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $post_url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $return = curl_exec($ch); curl_close($ch); ?>
O retorno o ID do post que poderia ser utilizado para apaga-lo ou edita-lo ou um erro.
Espero que isso resolva o problema de muita gente, pois a documentação do Facebook é péssima quando você quer uma coisa mais prática, eles tentam sempre te empurrar o SDK, o que não é necessário para coisas simples como essa.
Links úteis:
- Onde criar o aplicativo
- Onde obter o access token
- Onde renovar o access token / onde obter um access token com maior duração
Login automático do phpmyadmin
Para quem tem um servidor local e não quer ficar digitando a senha toda hora que for entrar no phpmyadmin, siga esses passos:
Abra o arquivo de configuração do phpmyadmin
vim /etc/phpmyadmin/config.inc.php
Localize essa linha:
$cfg['Servers'][$i]['auth_type'] = 'cookie';
Comente ela, e após ela adicione:
$cfg['Servers'][$i]['auth_type'] = 'config'; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = '123456';
Não há necessidade de reiniciar o apache, já está funcionando.