HAProxy, doğru yönlendirme kuralını bulduktan sonra gelen istekleri backend
servislerine yönlendirir. Öte yandan herhangi bir yönlendirme kuralı bulamadığında isteğin sonlandırılması gerekir. Bunun için sıradan bir yöntem statik içerik kullanmaktır. Statik içerik, sunucu maliyetlerini azaltmak için arama motorlarına karşı kullanılabilir.
devops@haproxy-01:~$ sudo vi /etc/haproxy/haproxy.conf
...
##################################################
# Frontend #
##################################################
frontend http_in
mode http
bind *:80
#logging
option httplog
#http options
option http-server-close
option forwardfor
#redirection rules
default_backend be_default
##################################################
##################################################
# Backend #
##################################################
backend be_default
mode http
errorfile 503 /etc/haproxy/errors/503.http
##################################################
...
Bundan sonra statik içerik oluşturulur.
devops@haproxy-01:~$ sudo vi /etc/haproxy/errors/503.http
HTTP/1.0 503 Service Unavailable
Cache-Control: no-cache
Connection: close
Content-Type: text/html
<html>
<head>
<title>Fatih Tatoğlu</title>
</head>
<body>
<h1>SERVICE UNAVAILABLE</h1>
<p>The server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay.</p>
</body>
</html>
Statik yanıt hazır. HAProxy, bir isteğin yönlendirmeyle eşleştirilememesi durumunda yukarıdaki HTML içeriğini 503 HTTP durum koduyla döndürecektir.
Bu değişikliği uygulamadan önce yapılandırma dosyasının doğrulanması gerekir.
devops@haproxy-01:~$ sudo /opt/haproxy/sbin/haproxy -c -V -f /etc/haproxy/haproxy.conf
devops@haproxy-01:~$ sudo systemctl reload haproxy
Cluster ortamı var ise konfigürasyonun tüm sunuculara uygulanması gerekmektedir.