Server: Maintenance page is not themed

Created on 13 Jun 2017  路  4Comments  路  Source: nextcloud/server

  • set your nextcloud instance in maintenance mode
  • open the web UI
  • expected: themed maintenance mode page
  • actual: default Nextcloud maintenance mode page

@LukasReschke @nickvergessen @blizzz @juliushaertl Any ideas how to make this work? Because during maintenance mode the theming app is not enabled and therefore can't provide the theme. 馃槙

Even adding this:

\OC_App::loadApp('theming');

here: https://github.com/nextcloud/server/blob/0f83cdc78e4a383beba1be220197e77e852036eb/lib/base.php#L278-L280

is not enough, because the styles and the actual logo receive a 503 then. 馃槙

bug design theming

Most helpful comment

I'm not a fan of this, we can be in a state where we're running a migration on the database or whatsoever and then everything may explode if we have user-supplied data here.

The migration page is super rarely displayed anyways. Do we want to risk a potential huge breakage just for the super rare times that this is displayed? I really would like to avoid a dependency on the filesystem and database here.

In this specific case, I'd ask them to create a page that returns a 503 HTTP status code and when they update their instance put a reverse proxy in front which has some nicer user-facing information and also acts as a status page.

All 4 comments

I'm not a fan of this, we can be in a state where we're running a migration on the database or whatsoever and then everything may explode if we have user-supplied data here.

The migration page is super rarely displayed anyways. Do we want to risk a potential huge breakage just for the super rare times that this is displayed? I really would like to avoid a dependency on the filesystem and database here.

In this specific case, I'd ask them to create a page that returns a 503 HTTP status code and when they update their instance put a reverse proxy in front which has some nicer user-facing information and also acts as a status page.

In this specific case, I'd ask them to create a page that returns a 503 HTTP status code and when they update their instance put a reverse proxy in front which has some nicer user-facing information and also acts as a status page.

Makes sense. 馃憤

Good idea @LukasReschke, should probably work with the main webserver as well, without reverse proxy:
Apache2 docs: https://httpd.apache.org/docs/2.4/mod/core.html#errordocument
nginx docs: https://nginx.org/en/docs/http/ngx_http_core_module.html#error_page

Good idea @LukasReschke, should probably work with the main webserver as well, without reverse proxy:
Apache2 docs: https://httpd.apache.org/docs/2.4/mod/core.html#errordocument
nginx docs: https://nginx.org/en/docs/http/ngx_http_core_module.html#error_page

Not really, because this would mess up on errors during the normal run.

Was this page helpful?
0 / 5 - 0 ratings