(SOLVED) Nextcloud 12: Login button not working

Thanks for your answer. Well, it doesn’t seem to be a theming issue since I didn’t edit any files nor do I have a theme set in config.php. What I’ve tried is rolling back to NC 11, that worked perfectly but once I upgrade to NC 12 Beta 4, any buttons stop working, including the “Start upgrade button” once I’ve copied and replaced the NC 11 files with NC 12 B4 files… I don’t know what could be the issue, but possibly some js errors?

Did you copy the nc11 files into your existing nc12b4 Installation? Did i understand that correctly?

No, I didn’t mean to say that. I set up a new NC 11 installation and copied the data directory from my NC12 installation over. And then I upgraded that NC 11 installation (which is working fine) to NC 12 b4 and the same problem as before occured: login / upgrade buttons were not working at all.

You could Try to upgrade again without copying your data into the the new instance

1 Like

Thanks, I solved the problem. I think it was due to the setting theme => ‘’ in my config.php. I setup a new installation and copied over my data directory again and used the same database but created a new config.php, that worked. Topic may be closed.

Hi, for me, comment the instanceid entry, has triggerred the generation of appdata_instanceid folder and solve the problem.

3 Likes

Wow! After days of trying the commenting of the instanceid entry is the solution for me. Thanks for that.

2 Likes

had the same problem, my hoster solved the issue: “It was caused by Google’s page cache and I disabled it.”

I had the same problem, too. My solution was the reworking of my nginx configuration. I used https://docs.nextcloud.com/server/12/admin_manual/installation/nginx.html as new basic.

If you have cloudflare enabled on your domain, try disabling it and clearing the cache.

2 Likes

in which file is this instanceid entry?

I am trying to install nextcloud with the Tomcat server.
Neither commenting out instanceid nor commenting out theme => ‘’ in my config.php solved the problem.
Firefox cache is cleared.
The server error log contains a lot of empty lines.
Nothing in data/nextcloud.log.

I just upgraded from version 12.0.0 to 12.0.2, but that didn’t help.

How can I debug this?

I managed to attach an Eclipse debugger session to nextcloud. I can go step by step through the code, but I have no idea, where to start debugging this issue…
I set a breakpoint in base.php static function handleLogin(…), but it just goes through and returns false…

The html code of the login dialog gives no clue, what string I could search in the source code…
Is this whole login stuff entirely handled by javascript?

If I forcibly enable the login button (with Firefox Inspect element (Q)) login seems to work. See screenshot from after the login… Does this mean, login worked (but no CSS etc. are loaded)?

Bildschirmfoto von »2017-09-07 10-37-28|548x500

Ich hatte das selbe Problem. Allerdings fiel mir irgendwann oben in den Webseiten-Informationen auf, dass dort “diese Seite ist nicht sicher steht”. Ich habe “SSL erzwingen” bei meinem Hoster eingetragen und seither funktioniert es einwandfrei.

Ich hatte das selbe Problem. Allerdings fiel mir irgendwann oben in den Webseiten-Informationen auf, dass dort “diese Seite ist nicht sicher steht”. Ich habe “SSL erzwingen” bei meinem Hoster eingetragen und seither funktioniert es einwandfrei.

Also der Browser sagt das? Nicht Nextcloud?
Ja, ich gehe auch noch nicht über SSL, weil es noch eine Testinstallation ist.
Das könnte ich natürlich mal versuchen.
Danke für den Hinweis.

Addendum: I tried to connect with SSL (https://). I have a self signed certificate. The button is still disabled=“disabled”.
Help please… especially if you have an idea on how to debug this.

There is a reference to this help thread in https://github.com/nextcloud/server/issues/5003

I searched where to start debugging:

$ find . -type f -name "*.js" -exec grep -Hi "Angemeldet bleiben" \{} \;
./core/l10n/de.js:    "Stay logged in" : "Angemeldet bleiben",
./core/l10n/de_DE.js:    "Stay logged in" : "Angemeldet bleiben",
$ find . -type f -name "*.php" -exec grep -H "Stay logged in" \{} \;
./core/templates/login.php:				<label for="remember_login"><?php p($l->t('Stay logged in')); ?></label>

I’ll try to set some breakpoints in core/templates/login.php.

… Ok, nothing to debug… disabled=“disabled” is hardcoded in login.php.

In the header of login.php I find

<?php
vendor_script('jsTimezoneDetect/jstz');
script('core', 'merged-login');
?>

I find core/js/merged-login.json…
In merged-login.json I find “login.js”…

The button is not enabled here…

In merged-login.json I find “visitortimezone.js”…
Here i find

// only enable the submit button once we are sure that the timezone is set

How can I find out, if the timezone is set? And if it’s not, what do I have to do to set it?

Ok…
In the Firefox console I see, that Firefox tries to load https://127.0.0.1:8443/nextcloud/index.php/js/core/merged-login.js, and Tomcat replies with 404 - Not found…

Ok, fixed that, login works.

After login Firefox tries to load a whole bunch of URLs, that my Tomcat is not yet able to serve, for example

http://127.0.0.1:8080/nextcloud/index.php/css/core/a0be55fb61caecf424266d9213bde68e-server.css
http://127.0.0.1:8080/nextcloud/index.php/css/core/a0be55fb61caecf424266d9213bde68e-share.css
http://127.0.0.1:8080/nextcloud/index.php/css/core/a0be55fb61caecf424266d9213bde68e-merged.css
http://127.0.0.1:8080/nextcloud/index.php/css/files_sharing/a0be55fb61caecf424266d9213bde68e-mergedAdditionalStyles.css
http://127.0.0.1:8080/nextcloud/index.php/css/files_texteditor/a0be55fb61caecf424266d9213bde68e-merged.css

Just to leave no doubt about this: Nextcloud works without SSL (https).
If you connect without SSL, Nextcloud displays a red warning in the settings menu.

Sorry to open the same thread again but I’m facing the exact same problem.

The login button worked in the first place. When I migrated the data directory from owncloud the login button stopped working.

I have tried the here proposed solution to comment out the instanceid entry in config.php and I have checked that a new appdata_{instanceid} was created in the data directory and restarted apache. However, the login button still doesn’t react and you can see in the browser that the control is disabled according to the CSS properties.

Has anybody an idea how to resolve this issue?

EDIT: Problem resolved! It was really just matter of clearing the cache for the site on the client browser after commenting out the instanceid field.

For the record: For me it was my CSP (Content Security Policy) preventing some assets to be loaded. Check your browser console!