Logo in top right is blank, login image is blank, cant seem to figure it out

Nextcloud version 12:
Operating system and version Ubuntu 16.04
Apache or nginx version Apache 2.4.25
PHP version 7

New issue since I upgraded to Nextcloud 12.

Certain images throughout nextcloud no longer load, and chrome gives this error in the inspector:

"Refused to load the image ‘http://SITENAME/nextcloud/core/img/logo.svg?v=49’ because it violates the following Content Security Policy directive: “img-src ‘self’ data: blob:”.

The login background, logo in top right, and icons in the activity app are affected.
See here: http://imgur.com/a/tkXrw

Nothing shows in the apache or nextcloud log regarding the issue.

config.php:

<?php $CONFIG = array ( 'instanceid' => 'ocaivwcwxgo8', 'passwordsalt' => 'SNIP', 'secret' => 'SNIP', 'trusted_domains' => array ( 0 => 'SNIP', ), 'datadirectory' => '/srv/nextcloud', 'overwrite.cli.url' => 'SNIP/nextcloud', 'dbtype' => 'mysql', 'version' => '12.0.0.29', 'dbname' => 'nextcloud', 'dbhost' => 'localhost', 'dbport' => '', 'dbtableprefix' => 'oc_', 'dbuser' => 'SNIP', 'dbpassword' => 'SNIP', 'logtimezone' => 'UTC', 'installed' => true, 'memcache.local' => '\\OC\\Memcache\\APCu', 'mail_smtpmode' => 'sendmail', 'appstore.experimental.enabled' => true, 'maintenance' => false, 'mail_from_address' => 'SNIP', 'mail_domain' => 'SNIP', 'theme' => '', 'loglevel' => 2, 'updater.release.channel' => 'stable', 'updater.secret' => 'SNIP', );

Any insight would be greatly appreciated

I’m currently having a similar issue. Out of curiosity, does browsing to the servers local ip address cause the logo and login image to display correctly?

Doesn’t seem to make a difference whether I’m accessing it via public or local IPs

upon reading the error message some more, the issue is nextcloud is trying to load the images over http vs https. Still not sure how to fix that though.

Hi,

I’ve just updated from NC 11 to NC 12 and I don’t have the same login image than I had before the updating.
Before I had the default login image (with mountain) and now I just have a blue image.
I also lost the nextcloud logo in the top left part when i’m logged

Did someone find how to fix this?

Regards

HI,

Nobody found out what’s wrong?

For information it seems that all of the images from core/img are not loaded.
I have no errors into my apache server lgos neither with nextcloud logs.

I also tried to upload a new backgroung image but doesn’t work, I still have a blue screen on my login page.

Regards

Are you all getting the same content security error out of curiosity?

I also can confirm that the problem is there. Upgraded to NC 12 and got a blank screen.

Entirely blank? Any errors or outputs at all? No one can help without information.

Hey,

No error messages on the server for me, only in the browser:

Mixed Content: The page at 'https://***.com/settings/help' was loaded over HTTPS, but requested an insecure resource 'http://***.com/core/doc/user/index.html'. This request has been blocked; the content must be served over HTTPS.

core.js?v=df6112e…-54:3 Refused to load the image 'http://***.com/core/img/logo.svg?v=54' because it violates the following Content Security Policy directive: "img-src 'self' data: blob:".

Yours is a different issue and I suggest you open a new topic, but first read this: Fixing "mixed content" errors when using a proxy

Proxy or not that config change will likely help.

1 Like

That’s it, thanks very much!

1 Like

Can I add that I have similar issue with OP? This is after I have upgraded to Nextcloud 12

Nextcloud version 12:
Operating system and version Ubuntu 16.04
Apache 2.4.18
Nginx (reverse proxy) 1.11.9
PHP version 7

images: http://imgur.com/a/Udkq2

Slight difference is that I have 2 domain. Domain1 login page works fine but Domain2 login page shows no background and no logo.

Domain2: Developer tools in chrome shows that it is trying to access background and logo from Domain1

And if I disable the background-image element in developer tools it will load correctly

I have already configure https overwrite in config.php

<?php
$CONFIG = array (
  'updatechecker' => false,
  'passwordsalt' => PRIVATE,
  'secret' => PRIVATE,
  'trusted_domains' => 
  array (
   0 => 'localhost',
   1 => '192.168.1.146',
   2 => 'nextcloud',
   3 => 'DOMAIN1.asuscomm.com',
   4 => 'DOMAIN2.ddns.net',
   ),
  'trusted_proxies' => 
  array (
   0 => '192.168.1.146',
   ),
  'overwriteprotocol' => 'https',
  'forwarded_for_headers' => 
  array (
   0 => 'HTTP_X_FORWARDED',
   1 => 'HTTP_FORWARDED_FOR',
  ),

After logging in from either Domain1 & Domain2 all files are served correctly except logo.

I have the same problem… appens always when the url is mydomain/index.php/apps/…
but if i go on mydomain/index.php/settings/personal or mydomain/index.php/settings/help logo image is loaded correctly and no errors

i set in config.php:
‘overwriteprotocol’ => ‘https’,
‘overwrite.cli.url’ => ‘https://mydomain’,
problem solved

I chime in to say I have the exact same problem and error messages in Chromium on a fresh install.

It seems like the URL of the resources are wrong, for instance for me it tries to load https://localhost/core/img/background.jpg?v=0 even though I’m accessing my instance from an external domain. When I access the instance from localhost, everything loads fine. It looks like an absolutely set URL set somewhere with the install domain instead of the accessing one.

In addition, I tried uploading different images for logo and background, as well as changing the background color with the admin panel, and it didn’t have any effect: the login screen screen and top bar when logged didn’t change, while the folder color changed. Changing the text works.

Adding overwriteprotocol and overwrite.cli.url didn’t help.

Check you’ve not misspelled it or omitted a comma or apostrophe

Moreover @all if the resolution doesn’t solve it for you, you need to open a new topic and supply details about your install.

Awesome!! Adding overwriteprotocol fixed it for me. Thanks a ton!

I’ve the exact same issue with multiple domains (https only):

<?php
$CONFIG = array (
[…]
‘trusted_domains’ =>
array (
0 => ‘domain0.org’,
1 => ‘domain1.org’,
),
‘overwriteprotocol’ => ‘https’,
[…]
);

When I load the login screen of:

Chrome inspection tool shows 3 warnings:

login:1 Refused to load the image ‘https://domain0.org/core/img/background.jpg?v=0’ because it violates the following Content Security Policy directive: “img-src ‘self’ data: blob:”.

login:1 Refused to load the image ‘https://domain0.org/core/img/logo.svg?v=0’ because it violates the following Content Security Policy directive: “img-src ‘self’ data: blob:”.

login:1 Refused to load the image ‘https://domain0.org/core/img/background.jpg?v=0’ because it violates the following Content Security Policy directive: “img-src ‘self’ data: blob:”.

Once authenticated, I get only one error:

core.js?v=da21f4a…-0:3 Refused to load the image ‘https://domain0.org/core/img/logo.svg?v=0’ because it violates the following Content Security Policy directive: “img-src ‘self’ data: blob:”.

I’ve tried every combination with: ‘overwriteprotocol’ => 'https" and ‘overwrite.cli.url’ => ‘https://domain0.org/

Why it’s trying to load some objects with URL of the other domain ? Any ideas ?

I had this problem too two weeks ago.
I create a server without knowing it final name.

When i put the real name in config.php then i started to have this problem.

For me the problem came from redis server.
I had to stop redis service, empty the cache and restart the service

Thanks for the clue. You’re right the issue is coming from Redis !

First I’ve flushed the cache manually with a “redis-cli flushall” then have reloaded apache but it didn’t fix anything.

But since I removed the cache settings in config.php, it’s working fine again.

Lines removed:

’ memcache.local’ => ‘\OC\Memcache\Redis’,
‘memcache.locking’ => ‘\OC\Memcache\Redis’,
‘redis’ =>
array (
‘host’ => ‘localhost’,
‘port’ => 6379,
‘timeout’ => 0,
),

I’ll drill down Redis doc to understand this behaviour and check if I can find a solution to use Redis with multiple domains.