# This configuration is a simplified example of how to use ssl on front
# and backends with additional certificates loaded from a directory for SNI
# capable clients.

global
	maxconn 100

defaults
	mode http
	timeout connect 5s
	timeout client 5s
	timeout server 5s

frontend myfrontend
	# primary cert is /etc/cert/server.pem
	# /etc/cert/certdir/ contains additional certificates for SNI clients
	bind :443 ssl crt /etc/cert/server.pem crt /etc/cert/certdir/
	bind :80
	default_backend mybackend

backend mybackend
	# a http backend
	server s3 10.0.0.3:80
	# a https backend
	server s4 10.0.0.3:443 ssl verify none

