The problem seems to be triggered by setting ServiceSettings.SiteURL. When I leave the setting empty, I get a HTML page, when I run curl http://localhost:8065. But when I set the parameter, I get just:
The problem seems to be the Apache configuration. The Mattermost documentation explains how to pass all requests to a Mattermost server:
<VirtualHost *:80>
# If you're not using a subdomain you may need to set a ServerAlias to:
# ServerAlias www.mydomain.com
ServerName mysubdomain.mydomain.com
ServerAdmin hostmaster@mydomain.com
ProxyPreserveHost On
# Set web sockets
RewriteEngine On
RewriteCond %{REQUEST_URI} /api/v[0-9]+/(users/)?websocket [NC,OR]
RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC,OR]
RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
RewriteRule .* ws://127.0.0.1:8065%{REQUEST_URI} [P,QSA,L]
<Location />
Require all granted
ProxyPass http://127.0.0.1:8065/
ProxyPassReverse http://127.0.0.1:8065/
ProxyPassReverseCookieDomain 127.0.0.1 mysubdomain.mydomain.com
</Location>
</VirtualHost>
But this does not match our setup. We want to pass the traffic to three different processes.
/jira to localhost:8080/jira
/confluence to localhost:8090/confluence
/mattermost to localhost:8065/mattermost
Our problem is, that we are not sure how to rewrite the Apache configuration to achieve this.