You may consider my previous e-mail as not sent. A local `curl` request on the VPS did actually return the custom error message. Problem is still not resolved, but it must have to do with some other proxy that caches the data, which probably has nothing to do with haproxy in this case.
Have a good one. ________________________________ Van: Master Yeti <jeti2...@hotmail.com> Verzonden: zondag 19 augustus 2018 18:38 Aan: haproxy@formilux.org Onderwerp: Bug report: custom errorfile configuration does not work Configuration file at /etc/haproxy/haproxy.cfg: global log 127.0.0.1 local2 chroot /var/lib/haproxy pidfile /var/run/haproxy.pid maxconn 4000 user haproxy group haproxy daemon stats socket /var/lib/haproxy/stats defaults errorfile 503 /usr/share/haproxy/503.http mode http log global option httplog option dontlognull option http-server-close option forwardfor except 127.0.0.0/8 option redispatch retries 3 timeout http-request 10s timeout queue 1m timeout connect 10s timeout client 1m timeout server 1m timeout http-keep-alive 10s timeout check 10s maxconn 3000 frontend nonsecure_entry *:80 redirect scheme https frontend secure_entry *:443 default_backend myapp backend myapp errorfile 503 /usr/share/haproxy/503.http balance roundrobin server myapp1 127.0.0.1:8080 check The configuration file is pretty much left to default, as you can see. The important lines are the ones defining the errorfile 503. I have edited the /usr/share/haproxy/503.http to a custom HTML page: HTTP/1.0 503 Service Unavailable Cache-Control: no-cache Connection: close Content-Type: text/html <!DOCTYPE html> <html> <head><title>503 Error</title></head> <body>This custom error-page is not displayed :(</body> </html> Please note that I did use CRLF instead of just LF to comply with the HTTP protocol. However, the result is that this custom 503 errorfile is never used by HAProxy. Neither is there an error displayed that something went wrong. I know it is not an issue in my setup, because I disabled the HAProxy service, and then there was no error-page at all (browser timeout). And I also verified that the given configuration file was actually used. I also made sure that the 503.http is readable and owned by haproxy:haproxy (verified with su haproxy -s /bin/bash followed by cat /usr/share/haproxy/503.http which displayed the file). The version I am using: haproxy -v HA-Proxy version 1.5.18 2016/05/10 Copyright 2000-2016 Willy Tarreau <wi...@haproxy.org> What is very peculiar, is that there is no warning/error message in the server output. As you can see, I just restarted it again, and everything seems normal: haproxy.service - HAProxy Load Balancer Loaded: loaded (/usr/lib/systemd/system/haproxy.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2018-08-19 18:32:00 CEST; 2s ago Main PID: 7136 (haproxy-systemd) CGroup: /system.slice/haproxy.service 7136 /usr/sbin/haproxy-systemd-wrapper -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid 7137 /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -Ds 7138 /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -Ds Aug 19 18:32:00 MASKED systemd[1]: Started HAProxy Load Balancer. Aug 19 18:32:00 MASKED systemd[1]: Starting HAProxy Load Balancer... Aug 19 18:32:00 MASKED haproxy-systemd-wrapper[7136]: haproxy-systemd-wrapper: executing /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -Ds I've looked into the source code on your github page, and I see that the 503 I am getting is precisely the output from the source code in proto_http.c, which is: [HTTP_ERR_503] = "HTTP/1.0 503 Service Unavailable\r\n" "Cache-Control: no-cache\r\n" "Connection: close\r\n" "Content-Type: text/html\r\n" "\r\n" "<html><body><h1>503 Service Unavailable</h1>\nNo server is available to handle this request.\n</body></html>\n", Additionally I verified that there was no caching going on, this was an actual response from haproxy. Therefore, the resulting observation is that haxproxy is effectively ignoring the errorfile definition in the configuration file - without warning or error. Best regards, Yeti;