rewrite - los - ¿Cómo volver a escribir domain.com en www.dominio.com con HAProxy?
editar dominio cpanel (2)
El Manual de configuración de HAProxy responde esto directamente:
Example:
Append ''www.'' prefix in front of all hosts not having it
http-request redirect code 301 location /
http://www.%[hdr(host)]%[capture.req.uri] /
unless { hdr_beg(host) -i www }
Está bajo la entrada de redirect
:
Tenemos 1 loadbalancer con 3 miembros detrás:
equilibrador principal: miembros de www.website.com: web1.website.com, web2.website.com y web3.website.com
Actualmente estamos usando nginx en el loadbalancer, pero queremos reemplazarlo con HAProxy.
Nginx reescribe el dominio sin www (dominio.com) a www.dominio.com con la siguiente línea:
server {
server_name domain.com;
listen 1.2.3.4:80;
rewrite ^(.*) http://www.domain.com$1 permanent;
}
¿Cómo puedo gestionar esto con HAproxy?
Mi configuración haproxy:
frontend http 1.2.3.4:80
default_backend www_cluster
acl is_www hdr_end(host) -i www.domain.com
use_backend www_cluster if is_www
backend www_cluster
balance roundrobin
cookie SERVERID insert nocache indirect
option httpchk HEAD / HTTP/1.0
option httpclose
option forwardfor
server web1 1.2.3.5:82 cookie WEB1 check
server web2 1.2.3.6:82 cookie WEB2 check
server web3 1.2.3.7:82 cookie WEB3 check
TIA!
Revise el bloque frontend
:
frontend http 1.2.3.4:80
default_backend www_cluster
redirect prefix http://www.mydomain.com code 301 if { hdr(host) -i domain.com }
Fuente:
- Haproxy redirecciona www a no www
- HAProxy 1.4 Manual
- Experiencia personal