summary refs log tree commit diff
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2018-12-11 12:18:19 +0000
committerRichard van der Hoff <richard@matrix.org>2018-12-11 13:26:22 +0000
commitf537432ef96baf07703805c43d16df45ea765044 (patch)
tree6cd235d6a46ed0aebace40d8c501b628257b10b3
parentMerge pull request #4260 from matrix-org/rav/python3 (diff)
downloadsynapse-f537432ef96baf07703805c43d16df45ea765044.tar.xz
Add a welcome page to the static resources
This is largely a precursor for the removal of the bundled webclient. The idea
is to present a page at / which reassures people that something is working, and
to give them some links for next steps.

The welcome page lives at `/_matrix/static/`, so is enabled alongside the other
`static` resources (which, in practice, means the client API is enabled). We'll
redirect to it from `/` if we have nothing better to display there.

It would be nice to have a way to disable it (in the same way that you might
disable the nginx welcome page), but I can't really think of a good way to do
that without a load of ickiness.

It's based on the work done by @krombel for #2601.
-rw-r--r--changelog.d/4289.feature1
-rwxr-xr-xsynapse/app/homeserver.py3
-rw-r--r--synapse/static/index.html26
3 files changed, 30 insertions, 0 deletions
diff --git a/changelog.d/4289.feature b/changelog.d/4289.feature
new file mode 100644
index 0000000000..4d53bd22c3
--- /dev/null
+++ b/changelog.d/4289.feature
@@ -0,0 +1 @@
+Add a welcome page for the client API port. Credit to @krombel!
\ No newline at end of file
diff --git a/synapse/app/homeserver.py b/synapse/app/homeserver.py
index 3e4dea2f19..e433c66558 100755
--- a/synapse/app/homeserver.py
+++ b/synapse/app/homeserver.py
@@ -137,8 +137,11 @@ class SynapseHomeServer(HomeServer):
             handler = handler_cls(config, module_api)
             resources[path] = AdditionalResource(self, handler.handle_request)
 
+        # try to find something useful to redirect '/' to
         if WEB_CLIENT_PREFIX in resources:
             root_resource = RootRedirect(WEB_CLIENT_PREFIX)
+        elif STATIC_PREFIX in resources:
+            root_resource = RootRedirect(STATIC_PREFIX)
         else:
             root_resource = NoResource()
 
diff --git a/synapse/static/index.html b/synapse/static/index.html
new file mode 100644
index 0000000000..d664239983
--- /dev/null
+++ b/synapse/static/index.html
@@ -0,0 +1,26 @@
+<html>
+   <head>
+       <title>Synapse is running</title>
+       <style>
+           body {
+               width: 30em;
+               margin: 0 auto;
+               font-family: Tahoma, Verdana, Arial, sans-serif;
+           }
+           h1 {
+               text-align: center;
+           }
+       </style>
+   </head>
+   <body>
+       <h1>Synapse is running</h1>
+       <p>Congratulations!</p>
+       <p>Your Synapse server is listening on this port and is ready for messages.</p>
+       <p>To use this server you'll need a client - e.g. one of
+       <a href="https://matrix.org/docs/projects/try-matrix-now.html#clients">this list of Matrix clients</a>.</p>
+       <p>You can find (federated) rooms that might be of interest to you on
+       <a href="https://view.matrix.org/">view.matrix.org</a>.</p>
+       <p>Or you just start creating your own rooms with your friends.</p>
+       <p>Welcome to the Matrix universe :)</p>
+   </body>
+</html>