From 6a15b8ab72d3a47fd99f90ffd950cfe15d9a5162 Mon Sep 17 00:00:00 2001 From: Peter Stone Date: Thu, 26 Mar 2026 01:00:07 +0000 Subject: fix: add ws:// ProxyPass for /claudomator/api/ws; track Apache vhost in repo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Apache's catch-all ProxyPass / uses plain HTTP — mod_proxy_wstunnel only activates on explicit ws:// rules. Without this, the Upgrade header was dropped for Claudomator WebSocket connections. Co-Authored-By: Claude Sonnet 4.6 --- deploy/apache/doot.terst.org-le-ssl.conf | 46 ++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 deploy/apache/doot.terst.org-le-ssl.conf (limited to 'deploy/apache') diff --git a/deploy/apache/doot.terst.org-le-ssl.conf b/deploy/apache/doot.terst.org-le-ssl.conf new file mode 100644 index 0000000..fca14c5 --- /dev/null +++ b/deploy/apache/doot.terst.org-le-ssl.conf @@ -0,0 +1,46 @@ + + + ServerAdmin webmaster@terst.org + ServerName doot.terst.org + + DocumentRoot /site/doot.terst.org/public + + Options FollowSymLinks + AllowOverride None + + + Options -Indexes +FollowSymLinks + AllowOverride None + Require all granted + + # Cache static assets + + Header set Cache-Control "max-age=31536000, public" + + + + # Static files served by Apache + Alias /static /site/doot.terst.org/public + + # WebSocket support (Requires mod_proxy_wstunnel) + # Must be placed BEFORE the generic ProxyPass / + ProxyPass /ws/ ws://127.0.0.1:38080/ws/ + ProxyPassReverse /ws/ ws://127.0.0.1:38080/ws/ + ProxyPass /claudomator/api/ws ws://127.0.0.1:38080/claudomator/api/ws + ProxyPassReverse /claudomator/api/ws ws://127.0.0.1:38080/claudomator/api/ws + + + + # Proxy all other requests to Go application + ProxyPreserveHost On + + + ProxyPass /static ! + ProxyPass / http://127.0.0.1:38080/ + ProxyPassReverse / http://127.0.0.1:38080/ + + Include /etc/letsencrypt/options-ssl-apache.conf + SSLCertificateFile /etc/letsencrypt/live/terst.org-0001/fullchain.pem + SSLCertificateKeyFile /etc/letsencrypt/live/terst.org-0001/privkey.pem + + -- cgit v1.2.3