Método delegate Jquery

Metodo ‘delegate’ executa funções em jquery ou javascript, mesmo após o carregamento dos elementos via ajax (quando um elemento é criado após o carregamento da pagina).

 

$(‘#elemento_pai’).delegate(‘#elemento_filho’, ‘click’, function(){

// Codifique aqui…

});

<div id=”elemento_pai”>
<a id=”elemento_filho” href=”#”>Clique aqui</a>
</div>

Nenhum comentário.

Evitar que Arquivos CSS ou Javascript Sejam Carregados em Cache

Aplicando em folhas de estilo

 

Com PHP

<link href=”style.css?<?php echo time(); ?>” rel=”stylesheet” type=”text/css” />

Resutaldo

<link href=”style.css?1234567890″ rel=”stylesheet” type=”text/css” />

 

Aplicando em scripts javascript

 

Com PHP

<script type=”text/javascript” src=”script.js?<?php echo time(); ?>”></script>

Resutaldo

<script type=”text/javascript” src=”script.js?1234567890″></script>

 

Estas simples implementações evitarão o carregamento do arquivo em cache e não afetarão de forma alguma

o seu CSS ou JS

Nenhum comentário.

CSS3 box-sizing: alterando o box model

O CSS abaixo altera o box model de todos os elementos HTML, assim, tanto a propriedade width quanto a height dos elementos considerarão também padding e margin para calcular a medida final

* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

Exemplo:
div{
width:100px;
height:100px;
padding:10px;
}

As medidas reais no box model padrão seriam 120px de largura e 120px de altura, ao contrário de 100px de lagura e 100px altura com a aplicação do box-sizing

boxsizing

Nenhum comentário.

Copiar diretórios / pastas em SSH de um servidor para outro, com exceção de pastas ou arquivos

O comando abaixo permite que todo conteúdo da pasta public_html do servidor 1 seja copiado ao servidor 2 com exceção dos diretórios pasta1, pasta2, pasta3/pasta1

rsync -av ––exclude ‘pasta1’ ––exclude ‘pasta2’ ––exclude ‘pasta3/pasta1’ public_html/ <usuario>@<host>:public_html

Até a próxima

Marco

Nenhum comentário.

Excluir pasta, todos seus subdiretórios e arquivos em PHP

Função simples e eficiente para remover uma pasta e todo o seu conteúdo, incluindo subpastas e arquivos.

function RemoveDir($dir){
if($x = opendir($dir)){
while(false !== ($file = readdir($x))){
if($file != “.” && $file != “..”){
$path = $dir.”/”.$file;
if(is_dir($path)){
RemoveDir($path);
}else if(is_file($path)){
unlink($path);
}
}
}
closedir($x);
}
rmdir($dir);
}

Nenhum comentário.

Formas de integração SQLite3 / PHP 5.4

Durante a migração de um site para um novo servidor constatamos algumas incompatibilidades. O banco utilizado é o SQLite. O site foi desenvolvido utilizando a API procedural de interface com o sistema de gerenciamento de banco de dados (SQLite)  que foi descontinuada na versão 5.4 do php (que é a versão do novo servidor).

Para solucionar este problema o site teve que ser adaptado para utilizar uma outra API mais atualizada, a Pdo_Sqlite, orientada a objetos. Assim nos deparamos com outra incompatibilidade: a API anterior trabalhava com a versão 2 do banco SQLite enquanto a nova trabalha com a versão 3, ou seja, a API Pdo_Sqlite não tem compatibilidade com a versão 2 do banco, que é o que estava sendo utilizado no site até então.

Assim a solução foi converter o banco da versão 2 para a versão 3, isso foi possível graças ao ótimo (e gratuito) programa SQLiteadmin que gerencia e atualiza qualquer versão do SQLite.

 

Nenhum comentário.

Executar sql em SSH

Comando simples para execução de arquivo .sql em SSH

[mysql -h ip_ou_host -u usuario_banco -p –default-character-set=utf8 banco_de_dados < instrucao.sql]

Nenhum comentário.

Copiar arquivo de um servidor para outro em SSH

Copiando arquivos via SSH

5 de Maio de 2012

Hi folks!
Hoje o assunto é a cópia de arquivos entre dois hosts via SSH pela rede.

Para isso usaremos o comando SCP.
Ele usa a mesma autenticação e fornece a segurança do SSH. Ele irá lhe perdir autenticação antes de iniciar a copia e transferências dos dados.

Como fazer:

$ scp <nome_arquivo> <ususario>@<ip_do_destino>:<diretorio_destino>

Onde:
<nome_arquivo>: nome do arquivo a ser copiado;
<ususario>: usuário no host destino que fará a autenticação via SSH;
<ip_do_destino> endereço ip ou nome do host de destino do arquivo;
<diretorio_destino> diretório para onde os arquivos serão copiados;

Exemplo:
$ scp /home/usuarior01/texto.txt root@192.168.1.25:/home/usuario02/Desktop

No exemplo acima copiamos o arquivo texto.txt da máquina local para o computador de IP 192.168.1.25 no Desktop do usuario02.

Dica:
Para copiar um diretório inteiro você pode usar o parâmetro ” -r “.

Exemplo:

scp -r <nome_diretorio> <usuario>@<ip_do_destino>:<diretorio_destino>

 

É isso! Até a próxima!

Nenhum comentário.

Comandos em SSH

SSH

Terminal1.png

SSH ( Secure Shell ) é um protocolo que permite conexão segura com outros computadores através de uma rede (por exemplo, a Internet). Dessa forma, você pode executar comandos remotamente no computador onde você está conectado, e todo o tráfego entre ambos estão criptografados. Isto significa que, mesmo que alguém copie todo o fluxo de dados entre o seu computador e o computador remoto, não será possível ser lido, visto que todo esse tráfego é cifrado, e somente tendo uma chave específica, será possível desfazer essa cifragem e finalmente entender o fluxo de dados.

 

Como acessar?

Usando Windows

Você vai precisar de um programa chamado PuTTY.
Clique aqui para efetuar o download.

Veja na imagem abaixo a tela de conexão.

  • Host name ( or IP adress ) informe o nome do seu domínio
  • Port 22
  • Connection type SSH
  • Clique em Open.

 

Putty wiki ssh.png

Na tela preta pedirá a informação Login as, informe o seu usuário de FTP.
Aperte a tecla enter do seu teclado.
Depois informe a sua senha de FTP e aperte enter novamente.
Pronto! O acesso ao SSH foi feito.

 

Putty wiki conexao 2.png

 

Usando GNU/Linux

Use o terminal (shell) para fazer o acesso.

O acesso deve ser feito usando o comendo: ssh usuário_de_ftp@nome_do_dominio.com
No exemplo da imagem abaixo usamos o comando: ssh leobarros@leobarros.x-br.com
Neste exemplo leobarros é o usuário de FTP e leobarros.x-br.com o nome do domínio.
Depois em password informe a senha de FTP e aperte enter no teclado.
Pronto! O acesso ao SSH foi feito.

 

Ssh login wiki.png

 

Principais comandos

Manipulação de Arquivos

Comando: cd
Descrição: Este comando é usado para navegar em diretórios. Use-o sem nenhuma opção para ir para o diretório root, seguido do comando a ser acessado ou ainda seguido de 2 pontos para que volte um nível.
Exemplo 1: cd
Exemplo 2: cd /usr
Exemplo 3: cd ..
Comando: cp
Descrição: Este comando é usado para copiar diretórios e/ou arquivos. Use-o seguido da opção -R para que sejam copiados todos os subdiretórios de um diretório.
Exemplo 1: cp teste.txt teste_final.txt
Exemplo 2: cp -R /home/diretorio /root
Comando: ls
Descrição: Este comando é usado para listar arquivos, diretórios e etc… em um diretório por exemplo. Use-o seguido da opção -l para que os dados sejam listados em uma única linha.
Exemplo: ls -l
Comando: rm
Descrição: Este comando é usado para remover arquivos e diretórios. Use-o seguido da opção -R para que sejam removidos todos os arquivos de um diretório.
Exemplo 1: rm teste.txt
Exemplo 2: rm -R /home/diretorio
Comando: mv Descrição: Este comando é usado para mover arquivos e diretórios para outros locais ou ainda para renomea-los.
Exemplo 1: mv teste.txt novo_teste.txt
Exemplo 2: mv /home/diretorio /root
Comando: mkdir
Descrição: Este comando é usado para criar diretórios.
Exemplo: mkdir teste
Comando: chmod
Descrição: Este comando é usado para alterar as permissões de arquivos e pastas. Use-o seguido da permissão desejada.
Exemplo: chmod 777 teste.txt
Comando: tar Descrição: Este comando é usado para compactar/descompactar arquivos com extensão .tar, .tar.gz
Exemplo(compactar): tar -zcvf arquivo.tar.gz teste.txt diretorio1 diretorio2
Exemplo(descompactar): tar -zxvf arquivo.tar.gz
Comando: zip
Descrição: Este comando é usado para compactar arquivos com extensão .zip
Exemplo: zip arquivo.zip teste.txt diretorio1 diretorio2
Comando: unzip
Descrição: Este comando é usado para descompactar arquivos com extensão .zip
Exemplo: unzip arquivo.zip
Comando: du
Descrição: Este comando é usado para calcular o espaço total de um diretório ou arquivo. Use-o seguido da opção -h para exibir o espaço em megabyte.
Exemplo 1: du -h ( lista todas as pastas do FTP informando o tamanho de cada uma, no final mostra o consumo total )
Exemplo 2: du -sh ( mostra apenas o espaço consumido )
Exemplo 3: du -h teste.txt ( mostra o tamanho do arquivo teste.txt )
Exemplo 4: du -h –max-depth=2 ( listará o espaço consumido dos diretórios em segundo nível )

 

Comandos de Busca

Comando: find
Descrição: Este comando é usado para localizar arquivos e diretórios.
Exemplo 1: find -name teste.txt
Exemplo 2: find /home/diretorio -name \*.txt
Comando: find -type f -perm 777
Descrição: Este comando vai listar todos os arquivos com permissão 777.
Comando: locate
Descrição: Este comando é usado para localizar arquivos e diretórios.
Exemplo: locate teste.txt
Comando: grep
Descrição: Este comando é usado para buscar uma expressão dentro de um arquivo.
Exemplo: grep palavra teste.txt

 

Outros comandos

Comando: / (refere-se ao diretório raiz no servidor)
Comando: ./ (refere-se ao diretório em que você se encontra)
Comando: ../ (refere-se ao diretório pai do que você se encontra)
Comando: pwd (mostra qual é o diretório em que você se encontra — dá o caminho completo)
Comando: ls -al (lista todos os arquivos + informações)
Comando: ls -alR (lista todos os arquivos + informações em todos os subdiretórios)
Comando: ls -alR > resultado.txt (lista todos os arquivos + informações em todos os subdiretórios, mas envia todas as informações para um arquivo ao invés de mostrar na tela)
Comando: ls -alR | more (lista todos os arquivos + informações em todos os subdiretórios, criando uma pausa)
Comando: ls *.html (lista todos os arquivos que terminam com .html)
Comando: ls -al home/usr/guto/ (lista todos os arquivos + informações de /home/usr/guto)
Comando: cd imagens (muda para o diretório imagens)
Comando: cd / (muda para o diretório raiz)
Comando: cd /home/usr/imagens (muda para o diretório /home/usr/imagens)
Comando: ls -d */ (lista todos os subdiretórios dentro do diretório atual)
Comando: rmdir nomedodiretório (apaga um diretório se estiver vazio)
Comando: rm -r nomedodiretório (remove um diretório e todos seus arquivos)
Comando: sed s/textoantigo/novotexto/g nomedoarquivo (faz uma varredura no arquivo e troca todas as ocorrências do [textoantigo] por [novotexto])
Comando: find / -name arquivo -print (procura em todo servidor por um arquivo)
Comando: find . -name arquivo -print (procura por um arquivo começando pelo diretório atual)
Comando: find / -name nomedodiretório -type d -print (procure no servidor inteiro por um diretório)

 

Permissão

Geralmente, quando instalamos algum plugin, complemento ou módulo, é possível que ele não funcione corretamente por problemas de permissão. Com isso, devemos identificar a pasta que necessita dessa permissão e modificá-lo conforme a regra de permissão. Ex: chmod -R 755/www/modules. A subpasta terá a permissão para ler e escrever.

  • 0 – Sem permissão
  • 1 – Permissão de execução
  • 2 – Permissão de escrita
  • 3 – Permissão de escrita e execução
  • 4 – Permissão de leitura
  • 5 – Permissão de leitura e execução
  • 6 – Permissão de leitura e escrita
  • 7 – Permissão de leitura, escrita e execução

Note que o primeiro algarismo diz respeito a permissões relativas ao proprietário do arquivo (ou da pasta). O segundo algarismo está vinculado ao grupo que tem direitos sobre o arquivo (ou sta). E o terceiro algarismo está relacionado aos outros usuários, que não estão diretamente relacionados com o arquivo (ou pasta). Logo, se você tiver uma permissão do tipo 723, significa que:

  • 7 – Permissão de leitura, gravação e execução para o usuário proprietário.
  • 2 – Permissão de leitura para o grupo proprietário.
  • 3 – Permissão de escrita e execução para os outros usuários.

 

Principais tipos de permissão

Precisamos saber qual tipo de permissão é necessária para cada tipo de arquivo, pois uma permissão mal aplicada poderá acarretar em problemas futuros. Muito cuidado com a permissão chmod 777, pois você dará permissões plenas (leitura, gravação e execução) a todos os usuários, e essa falha de segurança pode ocasionar-lhe muitos problemas.

 

  chmod 604 [arquivo] (para arquivos HTML)
  chmod 705 [nomedopasta] (para pastas)
  chmod 755 [arquivo] (script e programas)
  chmod 606 [arquivo] (permissão para arquivos de dados usados por scripts)
  chmod 703 [nomedopasta] (permissão para escrita no FTP público)

 

Corrigindo permissões de forma global

O padrão é manter permissão 644 para arquivos e 755 para as pastas.
Podemos fazer isso facilmente por SSH rodando os comandos abaixo:

Setar permissão 644 nos arquivos: find . -type f -exec chmod 644 ‘{}’ \;

Setar permissão 755 nas pastas: find . -type d -exec chmod 755 ‘{}’ \;

 

Nenhum comentário.

Área de trabalho remota – Licenças

Licença Terminal Server – Conexão de Área de Trabalho Remota

MSLicensing Windows VISTA / Win 7

Problema com a conexão de área de trabalho remota expirou o tempo de conexão.

Problema

 

Dias atrás recebi algumas ligações de usuários de uma localidade remota informando que estava aparecendo uma mensagem que o período de licenciamento iria expirar em X dias, toda vez que eles conectavam na Conexão de Área de Trabalho Remota.

Procurando por informações sobre licenças temporárias e também se existia alguma forma de postergar o término desse prazo, cheguei a várias explicações, umas plausíveis, outras nem tanto, por isso estou escrevendo esse tópico, da maneira mais objetiva possível e com uma explicação detalhada de cada passo realizado, para que você não só consiga fazer, mas também entender o processo, que pode acabar tirando você de um sufoco.

 

Cenário

 

Windows 2003 Server Standard (Português) Service Pack 1, rodando entre outros serviços o Terminal Server.

 

Causa

 

Precisei fazer uma manutenção no servidor um tempo atrás e quando fiz a instalação, passei pelo processo de instalação do Servidor de Licenças do Terminal Server, sem dar muita atenção, até por que eu já sabia do que se tratava e no momento não era esse o meu foco, eu estava apenas querendo fazer com que o servidor voltasse a funcionar corretamente, para depois terminar de configurar os serviços da maneira correta, e foi ai que eu cometi um erro, esqueci de anotar as pendências de instalação.

Após a volta dos serviços mais importantes ( no momento) fiz a instalação do Terminal Server e a configuração necessária para que os usuários pudessem voltar a utilizar o sistema da empresa matriz, porém novamente passei pela instalação do Servidor de Licenças sem configurar devidamente, o que causou enorme transtorno.

 

Solução

 

Para postergar a data de expiração, vá no registro do Windows Vista

1.INICIAR / PESQUISAR-Executar (Digite REGEDIT)

2.Aperte F3 (Digite MSLicensing na tela que aparecerá)

3.Delete a chave MSLicensing (a pasta com todas as pastas que estão dentro)

4.Feche o registro e reinicie o computador.

5.Clique com o botão da direita sobre Conexão de Área de Trabalho Remota

6.Clique em EXECUTAR COMO ADMINISTRADOR

7.Depois execute novamente o passo 1 e 2

8.Clique com o botão da direita sobre a chave MSLicensing

9.Clique em permissões e depois em editar

10.Adicione o usuário TODOS e deixe ele com permissão total

11.Clique em avançado e depois em Substituir as permissões de todos os objetos filhos …

12.Clique em APLICAR

13.Acesse novamente a Conexão de Área de Trabalho Remota e volte a usar o serviço, como se nada tivesse acontecido.

 

Nenhum comentário.