Я пытаюсь проксировать кокпит [1] с помощью Apache,
. Он открывает интерфейс входа в систему, но когда после входа в систему я получаю пустой экран, никаких ошибок, ничего. В devtools я нашел ошибку ws Error during WebSocket handshake: Unexpected response code: 400
Демон cockpit-ws выводит это в свои журналы
cockpit-ws[14523]: received invalid or missing Upgrade header: (null)
cockpit-ws[14523]: Received invalid handshake request from the client
cockpit-ws[14523]: WebSocket from 192.168.123.2 for session closed
Я работаю на Centos7 с кабиной 195
Вот соответствующая часть конфигурации
ProxyPreserveHost On
ProxyRequests Off
# allow for upgrading to websockets
RewriteEngine On
RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
RewriteRule .* ws://192.168.123.2:9090/%{REQUEST_URI} [P]
# Proxy to your local cockpit instance
ProxyPass / http://192.168.123.2:9090/
ProxyPassReverse / http://192.168.123.2:9090/
Да, я не использую виртуальный хост, я знаю, я пытаюсь заставить это работать на /cockpit
url, но это другой вопрос
Вот /etc/cockpit/cockpit.conf
[WebService]
Origins = https://192.168.123.2:9090 wss://192.168.123.2:9090 http://192.168.123.2 ws://192.168.123.2
ProtocolHeader = X-Forwarded-Proto
AllowUnencrypted = true
[1] https://cockpit-project.org/