У меня есть довольно простая настройка цифрового океанского контейнера для ведения личного блога (jcress.org)
Я бы хотел, чтобы jcress.org/drobot/ пересылал на мой сервер octoprint, размещенный намалиновый пи в моем подвале. haproxy будет обрабатывать http auth для запросов, исходящих за пределы локальной сети.
nginix обслуживает порт, который я перенаправляю с raspberry pi с помощью ssh -R, все, что кажется работающим.
Когда запросприземляется на Raspberry Pi Я вижу этот рендер на странице входа в систему;заполнение формы и вход в систему не работает, и я не вижу никакой активности в /var/log/haproxy.log
Из локальной сети я получаю:
Вот haproxy.conf
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
option http-server-close
option forwardfor
maxconn 2000
timeout connect 5s
timeout client 15min
timeout server 15min
frontend public
log /dev/log local0 debug
bind :::80 v4v6
bind :::443 v4v6 ssl crt /etc/ssl/snakeoil.pem
option forwardfor except 127.0.0.1
use_backend webcam if { path_beg /webcam/ }
use_backend octoprint_lan if { hdr_beg(host) -i 10.0 }
default_backend octoprint
backend octoprint_lan
reqrep ^([^\ :]*)\ /(.*) \1\ /\2
option forwardfor
server octoprint1 127.0.0.1:5000
errorfile 503 /etc/haproxy/errors/503-no-octoprint.http
backend octoprint
http-request set-header Host octopi-drobot.local
reqrep ^([^\ :]*)\ /drobot/?(.*) \1\ /\2
option forwardfor
server octoprint1 127.0.0.1:5000
errorfile 503 /etc/haproxy/errors/503-no-octoprint.http
acl ValidOctoPrintUser http_auth(OctoPrintUsers)
http-request auth realm OctoPrint if !ValidOctoPrintUser
userlist OctoPrintUsers
user USAR insecure-password PASSWARD
вот что отображается в журнале haproxy:
Oct 15 17:10:43 octopi-drobot haproxy[3777]: ::1:57030 [15/Oct/2019:17:10:42.938] public octoprint/octoprint1 0/0/92/45/137 200 3074 - - ---- 9/9/1/1/0 0/0 "GET / HTTP/1.0"