Speedr/Aplicativos/L7 Plugins

De BrByte Wiki
< Speedr‎ | Aplicativos
Revisão de 16h39min de 30 de março de 2016 por Aleff (discussão | contribs)

L7 Plugins

A dúvida de muitos usuários do Speedr quando se trata de Plugins é grande, e estou criando esse tópico para diminuir as inúmeras dúvidas!

Qual a real utilidade do L7 Plugin?

Os plugins do Speedr tem como principal ação interceptar o tráfego através de IP/CIDR, Domínios e URL visando melhorar ou otimizar ainda mais a performance do Speedr.

Como criar um Plugin?

Primeiramente você deverá abrir no seu navegador o painel do Speedr no endereço: http://ip_do_seu_speedr:8080 em seguida abra o APP L7 Plugins.

L7-PLUGIN-APP.png
L7-PLUGIN-INFO.png

Ao abrir o APP L7 Plugins, uma janela será aberta onde na mesma tem diversas informações sobre os plugins já existentes. E para adicionar um novo no canto superior você vai clicar em Novo.

Descrição

Nessa janela inicial, você deverá preencher o Nome, Categoria, Descrição, esses dados não tem influencia nenhuma no funcionamento do Plugin, vai ajudar apenas na identificação do mesmo.

L7-PLUGIN-DESC.png

IMPORTANTE: o ID não poderá ser duplicado, portanto na criação de um Plugin cuidado para não usar um ID já existente, pois o sistema não vai aceitar.

Habilitado: Essa função vem desabilitada por padrão, e você só deve habilitar, após concluir todas as configurações de seu Plugin, pois a partir do momento que você ativar o Plugin ele vai interceptar o tráfego especificado sem necessidade de reiniciar o seu Speedr.

  1. Ícone: Dêem preferência a imagens no formato JPG, PNG e GIF por ser mais leve, não esqueçam que o sistema só vai permitir o tamanho máximo de 16px 16px. Para adicionar um ícone é muito simples:
  2. Clique em Escolher Arquivo, procure o seu ícone e em seguida pressione o botão Importar.


Condições de Ativação

Nessa área você pode configurar IP/CIDR, Header, URL/DOM Allow e Reject entre outros.

  1. Protocolo: ALL, não precisa alterar, pois o FTP não tem tanta utilidade nos dias atuais.
  2. Método: O Speedr suporta os métodos GET, POST e HEAD você pode usar todos juntos.
  3. Tam. Min. do Objeto: O padrão mínimo é de 0 bytes, más é possível definir o limite mínimo em KBytes e Megabytes.
  4. Prioridade: A prioridade funciona na existência de 2 ou mais plugins que façam cache do mesmo conteúdo, se a prioridade do primeiro plugin é 10 e a do segundo é 15, o sistema automaticamente irá priorizar o plugin que tenha menor Prioridade, nesse caso é o 10.


IP/CIDR

Por padrão já vem definido o Default: ALLOW, para que todo IP ou Range seja liberado, porém você pode definir sem nenhuma complicação IP/CIDR para serem exclusivamente bloqueadas ou permitidas clicando em NOVO.


URL/DOM Allow

L7-PLUGIN-ALLOW.png
L7-PLUGIN-MATCH.png

Esse área é realmente indispensável, pois é nela que você poderá definir os Domínios e URLs que o plugin irá capturar.

  • OBS: O Default nesse caso é E, porém você também pode optar pelo OU
  • Qual a diferença entre o [E e OU]? No caso E, o sistema vai verificar todos os domínios e testar com cada uma das URLs. No caso OU, o sistema vai verificar todos os domínios e URLs individualmente sem unir domínio e URL.
  • Quantos Domínios e URLs eu posso adicionar? Não existe nenhum limite pré-estabelecido, caso queira adicionar vários lembre-se apenas do detalhe abaixo.
  1. PARTIAL MATCH: Considera apenas parte do Domínio ou URL.
  2. FULL MATCH: O sistema vai verificar especificamente o que estiver digitado na String.
  3. SPEED REGEX SENSITIVE/INSENSITIVE: Você poderia usar ‘’’REGEX’’’ (Expressões Regulares), na String, definindo se o sistema vai diferenciar Maiúsculas e Minúsculas .


URL/DOM Reject

L7-PLUGIN-REJECT.png

Ao contrário da condição acima, esse Reject irá rejeitar (bypassar) todos os domínios e urls adicionados.


Ação

L7-PLUGIN-ACAO.png

Essa parte é muito importante, pois é nela vamos definir toda a reescrita, e como o Plugin vai identificar e reescrever! Em opções, já temos a descrição detalhada, então vamos proceder para próximo passo.


Métodos de Reescrita:

Vamos usar para exemplificar as reescritas a URL abaixo citada.

URL COMPLETA: http://wiki.brbyte.com/wiki/Especial:Arquivos_novos?like=btn&limit=50&offset=

  • DYNASIG_NO_FALLBACK
    • STRING: NULL
    • Marca o objeto dinamicamente, com uma identificação única, podendo usar a STRING NULL, pois não há necessidade de reescrita.
  • DYNASIG_FALLBACK
    • O DYNASIG após uma tentativa falha de realizar a identificação do objeto, o mesmo será identificado com o método REG_AND_REPL_SCRIPT
  • REDIRECT_URL_REWRITE
    • Reescreve a URL de Destino com a STRING digitada!
    • STRING: google.com.br/brbyte
    • URL REESCRITA: google.com.br/brbyte

QOS

L7-PLUGIN-QOS.png

Também é possível priorizar o tráfego marcando com TOS o MISS/HIT, dessa forma você poderá entregar aos seus clientes, altíssimas velocidades em determinados conteúdos!

IMPORTANTE

Sem parâmetros:

  • |r_url_path|
    • Será substituída pela URL Path da presente requisição, eliminando tudo após o caractere ?, caso presente
    • Ex: http://xyz.com/path00/abc?xyz.com será substituída por path00/abc
  • |last_r_url_path|


Com parâmetros (sempre numéricos):

  • |r_last_dirs=XX|
    • Mesmo caso da anterior, mas elimina tudo após o caractere ?, caso presente.
  • |r_dir=XX|
    • Mesmo caso da anterior, mas elimina tudo após o caractere ?, caso presente.
    • Acesso a variáveis da requisição:
    • Alem destas palavras chave, qualquer variável sendo passada em uma requisição podem ser utilizados na identificação do conteúdo, utilizando o caractere $
    • Ex: http://abc.com/req?var00=xyz&var01=123&abc=speedr
      • $var00$ seria substituído por xyz
      • $var01$ seria substituído por 123
      • $abc$ seria substituído por speedr

Qualquer variável não presente na URL será substituída pela String padrão NULL.