Allow login to a read-only site

I did an import of some Wordpress data to an already active site. I thought it would be a Good Idea to put the site in read-only mode while I was doing the import so that people wouldn’t add data to the site that would get erased when the site + import_data was uploaded.

That’s a Bad Idea. Now I can’t log in. On a self-hosted site, you can fix this from the rails console, on a hosted site, however, you’re stuck (I just emailed team). I tried /users/admin-login, but it can’t work either (obvious in retrospect).

This doesn’t seem like that much of an edge case, shouldn’t there be a way to freeze a site that still allows admins to log in?

4 Likes

Just log in before you start read only. Seems simple enough?

Certainly simpler than “we must invent a time machine!”

Yeah, but somehow my cookies must have been deleted or something. Or what if the guy who put the site in read-only got hit by a bus?

4 Likes

As an alternative (or addition), perhaps a way to set a timer when enabling Read Only? Something like: Enable Read Only for: X hours.

Or maybe a special URI specifically to disable read only mode? Something like /admin/read-only which displays a login box for an administrator account and then disables read only when the credentials are correct. That wouldn’t need write-access to the database I imagine (only read to check the credentials).

Yeah. If I’d thought ahead to have an API key I probably could have fixed it that way. One of my plans is a remote control panel to do things like that. I think that there are a handful of tasks that it would be handy to be able to do via API calls via a remote web interface. Things like:

  • Creating sets of categories with certain colors and permissions for a particular purpose
  • control settings for sets of users
  • help to walk a user through Wordpress integration

It seems a little bizarre to build a web interface to remotely control a web app, but plugins get stale, and hosted people can’t install them anyway.

1 Like

That almost happened with me today.
I didn’t know that once I enabled this mode, and happen to close that incognito window tab, there wasn’t anyway to log back in!!!

Holy God!!!

How easy it was to lock my self out!!!

And its not less than miracle that just within 5 minutes (of disabling the 'read-only mode) I stumbled upon this post.!!!
Now at least I’ll try to remember this thing in future, whenever I want to tinker some admin settings!!!

1 Like

Anyone reading this topic, I got a solution in another similar topic here.

In case we’re locked out, we can run this command in rails console to disable the ‘read-only’ mode:

Discourse.disable_readonly_mode(Discourse::USER_READONLY_MODE_KEY)

1 Like