Saltar para o conteúdo principal

Configurações de Regras

Esta página fornece informações detalhadas de cada configuração no ecrã Editar Regra na aplicação Redirect Web.

Opções

Tipo

Especifique a opção Tipo para controlar como a aplicação lida com o redirecionamento. Pode escolher entre:

  • Original (Padrão)
    • Isto usa APIs Web tradicionais para controlar o redirecionamento. Além disso, usa a API Tabs como fallback.
    • Pode usar todas as opções, exceto Tipos de Recurso e Métodos de Pedido.
    • Isto é mais lento do que o tipo Declarativo e pode causar pedidos de rede extras.
  • DNR (Experimental para Safari):
    • Este tipo funciona muito mais rápido do que o tipo Original porque não inicia um pedido de rede para o URL de origem.
    • Isto permite-lhe especificar Tipos de Recurso e Métodos de Pedido.
    • ⚠️ Não pode usar algumas opções, como Processamento de Grupo de Captura e Padrões de URL Excluídos, uma vez que ainda não foram suportadas pela API DNR.
    • ⚠️ No Safari, atualmente não pode incluir pipes (|) no seu padrão de Expressão Regular. Detalhes
    • ⚠️ Uma vez que a API DNR do Safari ainda tem alguns problemas, consideramos que ainda é uma funcionalidade experimental para o Safari. Pode encontrar a lista de todos os problemas conhecidos aqui.

Redirecionar De

A opção Redirecionar De permite-lhe especificar um padrão de URL de páginas web das quais pretende redirecionar. Pode escolher entre Curinga ou Expressão Regular.

Por exemplo, se especificar https://example.com/* com Curinga, ele corresponde a https://example.com/ ou https://example.com/hello.

note

Na opção Redirecionar Para, pode referenciar a correspondência inteira usando $0 ou correspondências parciais usando $1, $2, ... Verifique os detalhes em Padrão de URL nesta página.

Tipos de Recurso

Tipos Suportados: DNR

A opção Tipos de Recurso permite-lhe especificar as categorias de pedidos web, como imagens, JavaScripts e folhas de estilo, às quais a regra se aplica. Por exemplo, se definir script, pode redirecionar os ficheiros JavaScript carregados pelas páginas web.

Atualmente, estão disponíveis: main_frame, sub_frame, stylesheet, script, image, font, xmlhttprequest, ping, media, websocket, other

A configuração padrão é main_frame, que é a página de nível superior carregada numa aba.

Por favor, verifique os detalhes de cada tipo de recurso em mdn web docs.

Métodos de Pedido

Tipos Suportados: DNR

A opção Métodos de Pedido permite-lhe definir os métodos HTTP de destino do URL de origem.

Todos os métodos são definidos por padrão.

Por favor, verifique os detalhes de cada método em mdn web docs.

warning

No Safari, esta opção pode não estar disponível porque a implementação da Apple para o tipo DNR não parece lidar com isso atualmente. Enviamos feedback à Apple como FB14502272.

Navegadores Alvo

Plataformas Suportadas: macOS

A opção Navegadores Alvo permite-lhe especificar a qual navegador a regra deve ou não ser aplicada.

  • Existem 2 tipos de navegadores que pode escolher:
    • Navegadores que pode escolher por padrão: Pode escolher Safari, Chrome, Firefox, Edge, Opera, Arc, Brave e Vivaldi por padrão. Isto não diferencia variantes do mesmo navegador, como Safari e Safari Technology Preview.
    • Navegadores especificados pelo utilizador: Ao tocar no botão Adicionar no popover, pode selecionar qualquer navegador que não seja Safari ou Safari Technology Preview que tenha a extensão Redirect Web instalada.
  • A caixa de seleção Todos, exceto os selecionados permite-lhe direcionar todos os navegadores, exceto os que escolheu.
warning

O Redirect Web não consegue diferenciar se o navegador é Safari ou Safari Technology Preview porque a aplicação verifica o processo pai da extensão para detetá-lo, mas estes dois navegadores partilham o mesmo processo pai (/sbin/launchd).

Redirecionar Para

A opção Redirecionar Para especifica um URL de destino para o qual deseja redirecionar, a partir do URL de origem correspondido com a opção Redirecionar De. Também pode substituir grupos de captura com $1, $2, ... ou a correspondência inteira com $0. Estes ajudam-no a especificar dinamicamente o destino. Verifique os detalhes em Padrão de URL nesta página.

Por exemplo, se definir a seguinte regra:

  • Redirecionar De: https://google.com/* (Curinga)
  • Redirecionar Para: https://apple.com/$1

e corresponder a https://google.com/hello, então o URL de destino será https://apple.com/hello.

Além disso, pode modificar os textos de $1, $2, ... antes de fazer substituições. Verifique a secção Processamento de Grupo de Captura para os detalhes.

tip

Pode especificar um esquema de URL personalizado para abrir uma aplicação. Estes são exemplos de aplicações que suportam deep linking:

  • Figma: figma://file/Your_Figma_ID
  • Firefox: firefox://open-url?url=https://example.com/hello
  • Google Chrome: googlechromes://example.com
  • Microsoft Edge: microsoft-edge://example.com
  • Notion: notion://www.notion.so/Your_Note_ID
  • Slack: slack://open

Aplicação

Tipos Suportados: Original Plataformas Suportadas: macOS

Se quiser especificar uma aplicação para abrir o URL de destino, use a caixa de combinação Aplicação. Isto só está disponível no macOS.

warning

Só pode abrir uma aplicação que suporte App Sandbox. Além disso, certifique-se de que a aplicação suporta a abertura do URL que pretende abrir.

Processamento de Grupo de Captura

Tipos Suportados: Original

A opção Processamento de Grupo de Captura permite-lhe especificar como processar os grupos capturados que pode substituir na opção Redirecionar Para com $1, $2...

Estas são as formas de criar grupos de captura:

  • Curinga: Textos correspondidos com * e ? são automaticamente capturados.
  • Expressão Regular: Textos correspondidos com parte do padrão dentro de () são capturados.

Pode escolher um ou mais dos seguintes processos:

  • Codificar/Descodificar URL: Isto aplica codificação percentual ou descodificação a um grupo de captura. Por exemplo, se codificar https://example.com/hello, é convertido para https%3A%2F%2Fexample.com%2Fhello. A descodificação funciona de forma oposta.
  • Codificar/Descodificar Base64: Isto descodifica/codifica um texto em Base64. Por exemplo, pode codificar hello para aGVsbG8=, e descodificá-lo de volta para hello.
  • Substituir Ocorrências: Isto substitui um ou mais caracteres num grupo, correspondidos por um Alvo, por uma Substituição. Por exemplo, se o Grupo for hello e o Alvo for l e a Substituição for y, é modificado para heyyo.
note

Isto é para processar cada grupo de captura e não afeta quais URLs são excluídos pelos Padrões de URL Excluídos. Por exemplo, digamos que tem esta regra:

  • Redirecionar De: https://example.com/(hello.*)
  • Processamento de Grupo de Captura:
    • Grupo: $1
    • Alvo: .* (Expressão Regular)
    • Substituição: hello
  • Padrão de URL Excluído: https://example.com/hello

Neste caso, https://example.com/hello_world não será excluído, enquanto https://example.com/hello será excluído.

Padrões de URL Excluídos

Tipos Suportados: Original

A opção Padrões de URL Excluídos permite-lhe especificar os URLs que não são redirecionados. Isto pode ser útil para evitar loops de redirecionamento ou para excluir certas partes de um website de serem redirecionadas.

Pode especificar padrões de URL excluídos usando tipos de padrão Expressão Regular ou Curinga.

Exemplos

A opção Exemplos permite-lhe testar a sua regra de redirecionamento fornecendo URLs de exemplo. Ao adicionar um URL de exemplo, pode verificar se a regra funciona como esperado antes de a aplicar.

Comentários

A opção Comentários permite-lhe adicionar quaisquer notas ou comentários sobre a sua regra de redirecionamento. Isto pode ser útil para manter o registo do porquê de ter criado uma regra específica ou para fornecer contexto para outros que possam ver as suas regras.

Padrão de URL

Existem 3 opções onde pode especificar um ou mais padrões de URL. Redirecionar De, Padrões de URL Excluídos e Processamento de Grupo de Captura. Para especificá-los, pode escolher entre Curinga ou Expressão Regular.

Curinga

Curinga é um tipo de padrão mais simples que lhe permite usar * (corresponde a qualquer coisa) e ? (corresponde a qualquer caractere único) como curingas. Aqui estão alguns exemplos:

  • Para corresponder a https://example.com/hello, pode usar https://example.com/*. Isto corresponderá a qualquer string depois de https://example.com/.
  • Para corresponder a https://example.com/search?q=hello, pode usar https://example.com/search?q=*. Isto corresponderá a qualquer valor para o parâmetro q.
  • Para corresponder a qualquer URL que contenha a palavra blog, pode usar *blog*.

Também pode usar substituição em Curinga, o que significa que pode referenciar partes do URL correspondido usando $1, $2, etc. Por exemplo, se usar https://example.com/*-world-*, e o URL for https://example.com/hello-world-goodbye, então $1 seria "hello" e $2 seria "goodbye". $0 também está disponível para referenciar o URL inteiro correspondido.

note

Embora a substituição seja uma funcionalidade da Expressão Regular, também pode usá-la para Curinga porque o Redirect Web converte internamente Curinga para Expressão Regular.

Expressão Regular

Expressão Regular (Regex) é uma ferramenta poderosa para corresponder padrões em texto, alimentada pelo motor de expressão regular da Apple, que é descrito aqui. Permite-lhe definir um padrão específico que corresponde a um conjunto de strings. Aqui estão alguns exemplos.

  • Para corresponder a https://example.com/hello, pode usar https://example.com/(.*). Isto corresponderá a qualquer string depois de https://example.com/ e armazená-la num grupo de captura.
  • Para corresponder a https://example.com/search?q=hello, pode usar https://example.com/search\?q=(.*). Isto corresponderá ao valor do parâmetro q e armazená-lo-á num grupo de captura.
  • Para corresponder a qualquer URL que contenha a palavra blog, pode usar .*blog.*.

Pode referenciar os grupos de captura em Redirecionar Para ou Substituição usando $1, $2, ... ou $0 para referenciar a correspondência inteira.

Mais informações sobre a sintaxe Regex podem ser encontradas em recursos como RegExr.