Como configurar CORS (Cross-Origin Resource Sharing)

O que é CORS ?

CORS (Cross-Origin Resource Sharing) é um mecanismo que informa aos navegadores que um recurso pode ser acessado a partir de um site específico. É utilizado para permitir ou bloquear o acesso a conteúdo como ajax, e fontes em outros sites.

Por padrão os navegadores bloqueiam esse tipo de acesso entre sites diferentes.

 

Exemplo:

  • Site www.meusite.com.br faz uma requisição ao arquivo de fonte em https://www.outrosite.com.br/minha-fonte.woff (por padrão o navegador bloqueará o acesso, pois os sites são diferentes).

 

Como funciona o mecanismo CORS ?

A configuração de CORS utiliza um cabeçalhos na requisição e na resposta. Na requisição, o principal cabeçalho é o Origin, enviado pelo navegador para identificar qual site está acessando o conteúdo.

Na resposta da requisição, o cabeçalho Access-Control-Allow-Origin identifica se o site em Origin possui permissão de acesso. Quando o navegador faz acesso ao conteúdo ajax ou de fonte em outro site, se esse cabeçalho não vier na resposta, o navegador irá bloquear o acesso ao conteúdo.

O cabeçalho Access-Control-Allow-Origin pode ter como valor o site que está acessando ou um asterisco, que indica que qualquer site pode acessar aquele conteúdo.

 

Exemplo:

Requisição:

GET /minha-fonte.woff HTTP/1.1
Host: www.outrosite.com.br
Origin: https://www.meusite.com.br

Resposta:

HTTP/1.1 200 OK
Access-Control-Allow-Origin: https://www.meusite.com.br

O valor do cabeçalho  Access-Control-Allow-Origin deve sempre seguir o padrão de URL acima, com prefixo http:// ou https://, seguido do endereço do site e não deve terminar com / nem conter um caminho de url após o endereço do site.

 

Como configurar CORS ?

A configuração de CORS é feita utilizando uma Smartrule Geral. Seleciona a URL que deseja liberar o acesso no critério URL (deve ser a URL do ajax ou fonte), em seguida selecione a ação Define Cross-Origin, com o valor do site que deseja liberar (este valor pode ser um asterisco para liberar para todos os sites).

 smartrule-cors.png

 

Caso fique com dúvidas ou tenha algum problema, entre em contato com o nosso suporte. Teremos prazer em ajudá-lo.


E-mail: suporte@gocache.com.br

 

Tem mais dúvidas? Envie uma solicitação

0 Comentários

Artigo fechado para comentários.