CONTENT
  • CHANGES
Szukaj
counter

#top Varnish behind HAProxy


Zobacz także Varnish behind HAProxy dla: HAProxy (HAProxy)

W niniejszej konfiguracji HAProxy odbiera połączenia przychodzące na port 80 i przekierowywuje je do Varnish na port 87:

Plik konfiguracyjny /etc/sysconfig/varnish:
# Default address and port to bind to
# Blank address means all IPv4 and IPv6 interfaces, otherwise specify
# a host name, an IPv4 dotted quad, or an IPv6 address in brackets.
VARNISH_LISTEN_ADDRESS=0.0.0.0
VARNISH_LISTEN_PORT=87
[...]
# DAEMON_OPTS is used by the init script.  If you add or remove options, make
# sure you update this section, too.
# -u varnish -g varnish \
# -w ${VARNISH_MIN_THREADS},${VARNISH_MAX_THREADS},${VARNISH_THREAD_TIMEOUT} \
DAEMON_OPTS="-n $VARNISH_WORKDIR/default \
             -a ${VARNISH_LISTEN_ADDRESS}:${VARNISH_LISTEN_PORT} \
             -f ${VARNISH_VCL_CONF} \
             -T ${VARNISH_ADMIN_LISTEN_ADDRESS}:${VARNISH_ADMIN_LISTEN_PORT} \
             -S ${VARNISH_SECRET_FILE} \
             -t ${VARNISH_TTL} \
             -s ${VARNISH_STORAGE}"

Plik konfiguracyjny /etc/sysconfig/varnishncsa:
# Specifies the name of the varnishd instance to get logs from.
# If -n is not specified, the host name is used.
VARNISH_WORKDIR=/srv/varnish
#OPTIONS="-n $VARNISH_WORKDIR/default -F \"%h %l %u %t "%r" %s %b \"%{Referer}i\" \"%{User-agent}i\"\""
OPTIONS="-n $VARNISH_WORKDIR/default -F \"%h %l %u %t "%r" %s %b \\\"%{Referer}i\\\" \\\"%{User-agent}i\\\" \\\"%{X-Forwarded-For}i\\\"\""

Zgodnie z RFC 7239 - Forwarded HTTP Header Field
A proxy server that wants to add a new "Forwarded" header field value
can either append it to the last existing "Forwarded" header field
after a comma separator or add a new field at the end of the header block.
oraz dokumentacją na stronie X-Forwarded-For (mozilla.org)
Syntax
X-Forwarded-For: <client>, <proxy1>, <proxy2>
adres IP klienta jest pierwszym adresem na liście w nagłówku HTTP X-Forwarded-For. Natomiast adres IP klienta łączącego się do serwera WWW jest ostatnim adresem IP na liście w nagłówku HTTP X-Forwarded-For dodanym przez serwer HAProxy, który przekazuje odebrane żądanie HTTP do serwera WWW i ten adres zostanie zapisany w logach access serwera.

Aby w logach access serwera Varnish zamiast adresu serwera Proxy zapisywany był adres klienta łączącego się poprzez Proxy niezbędna jest modyfikacja formatu informacji zapisywanych w logach varnishncsa polegająca na dodaniu do domyślnego formatu na końcu opcji zapisujacej do logu również nagłówek X-Forwarded-For jeśli jest obecny (Zobacz sekcję LogFormat).




Zmodyfikowany ostatnio: 2018/04/11 23:28:36 (7 lat temu), textsize: 39,0 kB, htmlsize: 3,94 kB

Zapraszam do komentowania, zgłaszania sugestii, propozycji, własnych przykładów, ...
Dodaj komentarzKomentarze użytkowników