Redirections et restrictions sur HAProxy

De Ikoula Wiki
Jump to navigation Jump to search

Introduction

Voici quelques configurations de redirections et restrictions sur HAProxy. Pour chacune des configurations, il est précisé à quel niveau ces dernières sont applicables, frontend, backend ou les deux.

Configurations

Forcer tous les domaines en HTTPS

La règle est applicable au niveau frontend et backend, la redirection ici est de type permanente (code 301, çà sera de même pour toutes les redirections de la FAQ) :

redirect scheme https code 301 if !{ ssl_fc }

Forcer un ou plusieurs domaines précis en HTTPS

La règle est applicable au niveau frontend et backend, dans notre exemple nous utilisons les domaines domain.tld et www.domain.tld, cette liste peut être exhaustive :

redirect scheme https code 301 if { hdr(Host) -i domain.tld -i www.domain.tld -i ...AUTRE_DOMAINE... } !{ ssl_fc }

Rediriger un domaine vers une URL

La règle est applicable au niveau frontend et backend, dans notre cas nous redirigeons domain.tld vers www.domain.tld :

acl NOM_DE_LA_REGLE hdr(host) -i domain.tld
http-request redirect code 301 location http://www.domain.tld if NOM_DE_LA_REGLE

Interdire une URI d'un domaine

La règle est applicable au niveau frontend et backend, l'interdiction ici est mise en place sur les URI /config ou /config/ :

acl NOM_DE_LA_REGLE path_reg /config($|/$)
http-request deny if NOM_DE_LA_REGLE

Restreindre une URL d'un domaine à une IP

La règle est applicable au niveau frontend et backend, la restriction est uniquement sur le domaine domain.tld, l'URI qui commence par /admin (donc l'URL domain.tld/admin) pour l'IP 1.2.3.4 :

acl NOM_DE_LA_REGLE_1 hdr(host) -i domain.tld
acl NOM_DE_LA_REGLE_3 path_beg /admin
acl NOM_DE_LA_REGLE_2 src 1.2.3.4
http-request deny if NOM_DE_LA_REGLE_1 NOM_DE_LA_REGLE_2 !NOM_DE_LA_REGLE_3



Cet article vous a semblé utile ?

0



Vous n'êtes pas autorisé à publier de commentaire.