Définition
CORS est une entête HTTP qui contrôle quels sites, externes ou non, peuvent accéder au contenu de votre site web, par le biais de scripts, tel que le propose XMLHttpRequest.
C’est une technique très facile à mettre en place et dont le bénéfice est vraiment important !
L’usage du symbole *
accepte que n’importe quel site puisse se
connecter ; sinon, remplissez une URL !
Elle fait partie des entêtes de base à générer pour protéger son site web, au même titre que l’usage de HSTS , et des autres entêtes, telles que X-Content-Type-Options , X-Frame-Options , ou X-XSS-Protections ,…
Exemples
Access-Control-Allow-Origin: *
nginx
add_header Access-Control-Allow-Origin "huc.fr.eu.org" always;
relayd
Et, oui, malheureusement, httpd ne peut pas gérer les entêtes, ce sera son binôme relayd(8) que l’on utilisera !
match response header set "Access-Control-Allow-Origin" value "huc.fr.eu.org"
Documentations
- https://developer.mozilla.org/fr/docs/Web/HTTP/CORS
- Support actuel de l’entête : http://caniuse.com/#search=cors