Email Logo - two dots in url
Steps to reproduce
- Send Test Mail in E-Mail Server Settings
- Picture link in mail is broken - checking URL Shows: https://subdomain..com/index.php/apps/theming/image/logo?useSvg=0&v=7
There are two dots behind the Domain Name. Opening the link with one dot > logo was shown up
Testing on 2 fresh Setups / new database with 16.0.3 > same issue as in updated nextcloud Cannot find any rewrite issue with a wrong Domain.
Where exactly are you seeing the broken url? Can you please post a screenshot. I personally cannot reproduce the described problem on my server and the logo on top of a test email looks fine.. Have you eventually avtivated the theming app and are you using a custom theme on your server?
1.Fresh install 2. Add Mailaddress 3. Change Design Setting (Name, Website, Solgan, Upload Logo, delete Logon Picture) 4. Send Testmail 5. Checking Mail with Outlook 2019 - download Pictures > No Picture. 6. Open mail in Browser (Edge) > Preferences of the picture showed up the url with the two dots.
Is Step 3 resulting in a Problem > Custom theme?
From my point of view there are several thing which might influence the result, e.g. the use of a custom logo, the use of MS Outlook as an email client , the Edge browser etc. Therefore I would recommend to check the following things:
- check the email with the original logo.
- check email with a different email client, like e.g. Thunderbird.
- use a different web browser, like Firefox.
Done all the checks - the image link is broken. In one of the earlier versions of nextcloud i solved this Problem by replacing some lines in code but i cant remember … :(
So and what are the results of the tests? Due to the fact that I cannot see any problems with the default settings on my server, I would have expected that you it will work on your server with the default settings too.
This sounds related to https://github.com/swiftmailer/swiftmailer/issues/72 https://github.com/swiftmailer/swiftmailer/pull/401/commits/e8876da8a5e77f23391e28df86901d541fc7951b but this shouldn't be a problem in the version of swiftmail in Nextcloud
https://github.com/swiftmailer/swiftmailer/issues/805 seems more recent
@philde I'm having the exact same issue here – did you end up finding a solution?
The double dot problem does not only affect logo links but any link in Nextcloud mails. We have already seen double dots in registration mails and also in notification mails that you get when somebody shares a file via link with you. Those broken links look like: https://oc..subdomain.domain.de/foo/index.php/s/SS2XXXXXXXXXX
It's a pretty annoying problem which seems to affect all versions of NC 19. So far I did not test it with NC 20 or later.
According to https://github.com/swiftmailer/swiftmailer/issues/805 swiftmailer is not working rfc conform since the first dot of each line in a mail must be encoded. As suggested in https://github.com/swiftmailer/swiftmailer/issues/805#issuecomment-625820227 a workaround could be to enscape just every dots via:
Swift_Preferences::getInstance()->setQPDotEscape(true);
Is this Issue still valid in NC21.0.3? If not, please close this issue. Thanks! :)
Yes, I've sadly just confirmed that this issue persists after upgrading to 21.0.3.
For further debugging, I need more information about your setup. Can you please fill out the issue template? You can find it here https://raw.githubusercontent.com/nextcloud/server/master/.github/ISSUE_TEMPLATE/Bug_report.md Thank you!
Steps to reproduce
- Send Test Mail in E-Mail Server Settings
- Picture link in mail is broken - checking URL Shows: https://[subdomain].[domain]..[TLD]/apps/theming/image/logo?useSvg=0&v=6
Expected behaviour
The picture should be shown in the email.
Actual behaviour
The image URL is broken because it contains two dots instead of one before the TLD, no image displayed in the email. (Removing the extra dot makes the URL work fine).
Server configuration
Operating system: CentOS Linux 7 (Core)
Web server: nginx (+ httpd)
Database: MySQL (MariaDB 10.3)
PHP version: 8.0.9
Nextcloud version: 21.0.3
Updated from an older Nextcloud/ownCloud or fresh install: updated – but problem persisted since the very initial install (Nextcloud v20)
Where did you install Nextcloud from: https://download.nextcloud.com/server/releases/latest.tar.bz2
Signing status:
Signing status
No errors have been found.
List of activated apps:
App list
Enabled:
- accessibility: 1.7.0
- activity: 2.14.3
- appointments: 1.10.0
- apporder: 0.13.0
- calendar: 2.3.1
- cloud_federation_api: 1.4.0
- comments: 1.11.0
- contacts: 4.0.1
- contactsinteraction: 1.2.0
- dashboard: 7.1.0
- dav: 1.17.1
- documentserver_community: 0.1.11
- external: 3.8.2
- federatedfilesharing: 1.11.0
- federation: 1.11.0
- files: 1.16.0
- files_accesscontrol: 1.11.0
- files_automatedtagging: 1.11.0
- files_pdfviewer: 2.1.0
- files_retention: 1.10.1
- files_rightclick: 1.0.0
- files_sharing: 1.13.1
- files_trashbin: 1.11.0
- files_versions: 1.14.0
- files_videoplayer: 1.10.0
- firstrunwizard: 2.10.0
- groupfolders: 9.0.2
- integration_dropbox: 1.0.1
- logreader: 2.6.0
- lookup_server_connector: 1.9.0
- mail: 1.10.2
- nextcloud_announcements: 1.10.0
- notifications: 2.9.0
- oauth2: 1.9.0
- onlyoffice: 7.1.2
- password_policy: 1.11.0
- photos: 1.3.0
- privacy: 1.5.0
- provisioning_api: 1.11.0
- quickaccesssorting: 1.1.2
- recommendations: 1.0.0
- serverinfo: 1.11.0
- settings: 1.3.0
- sharebymail: 1.11.0
- spreed: 11.3.1
- support: 1.4.0
- survey_client: 1.9.0
- systemtags: 1.11.0
- text: 3.2.0
- theming: 1.12.0
- twofactor_backupcodes: 1.10.0
- updatenotification: 1.11.0
- user_status: 1.1.1
- viewer: 1.5.0
- workflowengine: 2.3.0
Disabled:
- admin_audit
- encryption
- files_external
- user_ldap
- weather_status
Nextcloud configuration:
Config report
{
"system": {
"passwordsalt": "***REMOVED SENSITIVE VALUE***",
"secret": "***REMOVED SENSITIVE VALUE***",
"trusted_domains": [
"***REMOVED SENSITIVE VALUE***",
"***REMOVED SENSITIVE VALUE***",
"***REMOVED SENSITIVE VALUE***s"
],
"datadirectory": "***REMOVED SENSITIVE VALUE***",
"dbtype": "mysql",
"version": "21.0.3.1",
"overwrite.cli.url": "***REMOVED SENSITIVE VALUE***",
"dbname": "***REMOVED SENSITIVE VALUE***",
"dbhost": "***REMOVED SENSITIVE VALUE***",
"dbport": "",
"dbtableprefix": "oc_",
"mysql.utf8mb4": true,
"dbuser": "***REMOVED SENSITIVE VALUE***",
"dbpassword": "***REMOVED SENSITIVE VALUE***",
"installed": true,
"instanceid": "***REMOVED SENSITIVE VALUE***",
"mail_domain": "***REMOVED SENSITIVE VALUE***",
"mail_from_address": "***REMOVED SENSITIVE VALUE***",
"mail_smtpmode": "sendmail",
"mail_sendmailmode": "pipe",
"memcache.local": "\\OC\\Memcache\\APCu",
"maintenance": false,
"htaccess.RewriteBase": "\/",
"theme": "",
"loglevel": 2,
"redis": {
"host": "***REMOVED SENSITIVE VALUE***",
"timeout": "1.5"
},
"filelocking.enabled": "true",
"memcache.locking": "\\OC\\Memcache\\Redis",
"memcache.distributed": "\\OC\\Memcache\\Redis",
"default_phone_region": "DE"
}
}
Are you using external storage, if yes which one: no
Are you using encryption: no
Are you using an external user-backend, if yes which one: no
Client configuration
Browser: n/a (any)
Operating system: n/a (any)
Logs
Nextcloud log (data/nextcloud.log)
Nextcloud log
{"reqId":"I9vt0YyACGuAbyIHKEm9","level":3,"time":"2021-03-05T07:47:13+00:00","remoteAddr":"","user":"CloudAdmin","app":"no app in context","method":"","url":"--","message":{"Exception":"OCP\\AppFramework\\QueryException","Message":"Could not resolve trashManager! Class \"trashManager\" does not exist","Code":0,"Trace":[{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Utility/SimpleContainer.php","line":126,"function":"resolve","class":"OC\\AppFramework\\Utility\\SimpleContainer","type":"->","args":["trashManager"]},{"file":"/var/www/virtual/poncloud/html/lib/private/ServerContainer.php","line":162,"function":"query","class":"OC\\AppFramework\\Utility\\SimpleContainer","type":"->","args":["trashManager",true]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/DependencyInjection/DIContainer.php","line":434,"function":"query","class":"OC\\ServerContainer","type":"->","args":["trashManager",true]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Utility/SimpleContainer.php","line":56,"function":"query","class":"OC\\AppFramework\\DependencyInjection\\DIContainer","type":"->","args":["trashManager"]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Bootstrap/FunctionInjector.php","line":58,"function":"get","class":"OC\\AppFramework\\Utility\\SimpleContainer","type":"->","args":["trashManager"]},{"function":"OC\\AppFramework\\Bootstrap\\{closure}","class":"OC\\AppFramework\\Bootstrap\\FunctionInjector","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Bootstrap/FunctionInjector.php","line":68,"function":"array_map","args":[{"__class__":"Closure"},[{"name":"serverContainer","__class__":"ReflectionParameter"},{"name":"logger","__class__":"ReflectionParameter"},{"name":"appManager","__class__":"ReflectionParameter"},"*** sensitive parameter replaced ***"]]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Bootstrap/BootContext.php","line":52,"function":"injectFn","class":"OC\\AppFramework\\Bootstrap\\FunctionInjector","type":"->","args":[[{"__class__":"OCA\\Files_Trashbin\\AppInfo\\Application"},"registerTrashBackends"]]},{"file":"/var/www/virtual/poncloud/html/apps/files_trashbin/lib/AppInfo/Application.php","line":57,"function":"injectFn","class":"OC\\AppFramework\\Bootstrap\\BootContext","type":"->","args":[[{"__class__":"OCA\\Files_Trashbin\\AppInfo\\Application"},"registerTrashBackends"]]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Bootstrap/Coordinator.php","line":176,"function":"boot","class":"OCA\\Files_Trashbin\\AppInfo\\Application","type":"->","args":[{"__class__":"OC\\AppFramework\\Bootstrap\\BootContext"}]},{"file":"/var/www/virtual/poncloud/html/lib/private/legacy/OC_App.php","line":197,"function":"bootApp","class":"OC\\AppFramework\\Bootstrap\\Coordinator","type":"->","args":["files_trashbin"]},{"file":"/var/www/virtual/poncloud/html/lib/private/legacy/OC_App.php","line":137,"function":"loadApp","class":"OC_App","type":"::","args":["files_trashbin"]},{"file":"/var/www/virtual/poncloud/html/apps/dav/lib/AppInfo/Application.php","line":124,"function":"loadApps","class":"OC_App","type":"::","args":[["dav"]]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Bootstrap/Coordinator.php","line":176,"function":"boot","class":"OCA\\DAV\\AppInfo\\Application","type":"->","args":[{"__class__":"OC\\AppFramework\\Bootstrap\\BootContext"}]},{"file":"/var/www/virtual/poncloud/html/lib/private/legacy/OC_App.php","line":197,"function":"bootApp","class":"OC\\AppFramework\\Bootstrap\\Coordinator","type":"->","args":["dav"]},{"file":"/var/www/virtual/poncloud/html/lib/private/legacy/OC_App.php","line":137,"function":"loadApp","class":"OC_App","type":"::","args":["dav"]},{"file":"/var/www/virtual/poncloud/html/lib/private/legacy/OC_Util.php","line":203,"function":"loadApps","class":"OC_App","type":"::","args":[["filesystem"]]},{"file":"/var/www/virtual/poncloud/html/lib/private/User/Session.php","line":554,"function":"setupFS","class":"OC_Util","type":"::","args":["*** sensitive parameter replaced ***"]},{"file":"/var/www/virtual/poncloud/html/lib/private/User/Session.php","line":415,"function":"prepareUserLogin","class":"OC\\User\\Session","type":"->","args":[true,"*** sensitive parameter replaced ***"]},{"file":"/var/www/virtual/poncloud/html/lib/private/User/Session.php","line":624,"function":"completeLogin","class":"OC\\User\\Session","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/virtual/poncloud/html/lib/private/User/Session.php","line":367,"function":"loginWithPassword","class":"OC\\User\\Session","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/virtual/poncloud/html/lib/private/Setup.php","line":440,"function":"login","class":"OC\\User\\Session","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/virtual/poncloud/html/core/Command/Maintenance/Install.php","line":108,"function":"install","class":"OC\\Setup","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/virtual/poncloud/html/3rdparty/symfony/console/Command/Command.php","line":255,"function":"execute","class":"OC\\Core\\Command\\Maintenance\\Install","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/virtual/poncloud/html/3rdparty/symfony/console/Application.php","line":1009,"function":"run","class":"Symfony\\Component\\Console\\Command\\Command","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/virtual/poncloud/html/3rdparty/symfony/console/Application.php","line":273,"function":"doRunCommand","class":"Symfony\\Component\\Console\\Application","type":"->","args":[{"__class__":"OC\\Core\\Command\\Maintenance\\Install"},{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/virtual/poncloud/html/3rdparty/symfony/console/Application.php","line":149,"function":"doRun","class":"Symfony\\Component\\Console\\Application","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/virtual/poncloud/html/lib/private/Console/Application.php","line":215,"function":"run","class":"Symfony\\Component\\Console\\Application","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/virtual/poncloud/html/console.php","line":100,"function":"run","class":"OC\\Console\\Application","type":"->","args":[]},{"file":"/var/www/virtual/poncloud/html/occ","line":11,"args":["/var/www/virtual/poncloud/html/console.php"],"function":"require_once"}],"File":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Utility/SimpleContainer.php","Line":115,"CustomMessage":"Could not boot files_trashbinCould not resolve trashManager! Class \"trashManager\" does not exist"},"userAgent":"--","version":"21.0.0.18"}
{"reqId":"I9vt0YyACGuAbyIHKEm9","level":3,"time":"2021-03-05T07:47:13+00:00","remoteAddr":"","user":"CloudAdmin","app":"no app in context","method":"","url":"--","message":{"Exception":"OCP\\AppFramework\\QueryException","Message":"Could not resolve OCA\\Files_Versions\\Versions\\IVersionManager! Class can not be instantiated","Code":0,"Trace":[{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Utility/SimpleContainer.php","line":126,"function":"resolve","class":"OC\\AppFramework\\Utility\\SimpleContainer","type":"->","args":["OCA\\Files_Versions\\Versions\\IVersionManager"]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/DependencyInjection/DIContainer.php","line":459,"function":"query","class":"OC\\AppFramework\\Utility\\SimpleContainer","type":"->","args":["OCA\\Files_Versions\\Versions\\IVersionManager"]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/DependencyInjection/DIContainer.php","line":431,"function":"queryNoFallback","class":"OC\\AppFramework\\DependencyInjection\\DIContainer","type":"->","args":["OCA\\Files_Versions\\Versions\\IVersionManager"]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Utility/SimpleContainer.php","line":56,"function":"query","class":"OC\\AppFramework\\DependencyInjection\\DIContainer","type":"->","args":["OCA\\Files_Versions\\Versions\\IVersionManager"]},{"file":"/var/www/virtual/poncloud/html/apps/files_versions/lib/AppInfo/Application.php","line":119,"function":"get","class":"OC\\AppFramework\\Utility\\SimpleContainer","type":"->","args":["OCA\\Files_Versions\\Versions\\IVersionManager"]},{"file":"/var/www/virtual/poncloud/html/apps/files_versions/lib/AppInfo/Application.php","line":106,"function":"loadBackend","class":"OCA\\Files_Versions\\AppInfo\\Application","type":"->","args":[{"@attributes":{"for":"OCP\\Files\\Storage\\IStorage"},"@value":"OCA\\Files_Versions\\Versions\\LegacyVersionsBackend"},{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"__class__":"OC\\AppFramework\\Logger"}]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Bootstrap/FunctionInjector.php","line":68,"function":"registerVersionBackends","class":"OCA\\Files_Versions\\AppInfo\\Application","type":"->","args":[{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"__class__":"OC\\App\\AppManager"},{"__class__":"OC\\AppFramework\\Logger"}]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Bootstrap/BootContext.php","line":52,"function":"injectFn","class":"OC\\AppFramework\\Bootstrap\\FunctionInjector","type":"->","args":[{"__class__":"Closure"}]},{"file":"/var/www/virtual/poncloud/html/apps/files_versions/lib/AppInfo/Application.php","line":91,"function":"injectFn","class":"OC\\AppFramework\\Bootstrap\\BootContext","type":"->","args":[{"__class__":"Closure"}]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Bootstrap/Coordinator.php","line":176,"function":"boot","class":"OCA\\Files_Versions\\AppInfo\\Application","type":"->","args":[{"__class__":"OC\\AppFramework\\Bootstrap\\BootContext"}]},{"file":"/var/www/virtual/poncloud/html/lib/private/legacy/OC_App.php","line":197,"function":"bootApp","class":"OC\\AppFramework\\Bootstrap\\Coordinator","type":"->","args":["files_versions"]},{"file":"/var/www/virtual/poncloud/html/lib/private/legacy/OC_App.php","line":137,"function":"loadApp","class":"OC_App","type":"::","args":["files_versions"]},{"file":"/var/www/virtual/poncloud/html/apps/dav/lib/AppInfo/Application.php","line":124,"function":"loadApps","class":"OC_App","type":"::","args":[["dav"]]},{"file":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Bootstrap/Coordinator.php","line":176,"function":"boot","class":"OCA\\DAV\\AppInfo\\Application","type":"->","args":[{"__class__":"OC\\AppFramework\\Bootstrap\\BootContext"}]},{"file":"/var/www/virtual/poncloud/html/lib/private/legacy/OC_App.php","line":197,"function":"bootApp","class":"OC\\AppFramework\\Bootstrap\\Coordinator","type":"->","args":["dav"]},{"file":"/var/www/virtual/poncloud/html/lib/private/legacy/OC_App.php","line":137,"function":"loadApp","class":"OC_App","type":"::","args":["dav"]},{"file":"/var/www/virtual/poncloud/html/lib/private/legacy/OC_Util.php","line":203,"function":"loadApps","class":"OC_App","type":"::","args":[["filesystem"]]},{"file":"/var/www/virtual/poncloud/html/lib/private/User/Session.php","line":554,"function":"setupFS","class":"OC_Util","type":"::","args":["*** sensitive parameter replaced ***"]},{"file":"/var/www/virtual/poncloud/html/lib/private/User/Session.php","line":415,"function":"prepareUserLogin","class":"OC\\User\\Session","type":"->","args":[true,"*** sensitive parameter replaced ***"]},{"file":"/var/www/virtual/poncloud/html/lib/private/User/Session.php","line":624,"function":"completeLogin","class":"OC\\User\\Session","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/virtual/poncloud/html/lib/private/User/Session.php","line":367,"function":"loginWithPassword","class":"OC\\User\\Session","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/virtual/poncloud/html/lib/private/Setup.php","line":440,"function":"login","class":"OC\\User\\Session","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/virtual/poncloud/html/core/Command/Maintenance/Install.php","line":108,"function":"install","class":"OC\\Setup","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/virtual/poncloud/html/3rdparty/symfony/console/Command/Command.php","line":255,"function":"execute","class":"OC\\Core\\Command\\Maintenance\\Install","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/virtual/poncloud/html/3rdparty/symfony/console/Application.php","line":1009,"function":"run","class":"Symfony\\Component\\Console\\Command\\Command","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/virtual/poncloud/html/3rdparty/symfony/console/Application.php","line":273,"function":"doRunCommand","class":"Symfony\\Component\\Console\\Application","type":"->","args":[{"__class__":"OC\\Core\\Command\\Maintenance\\Install"},{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/virtual/poncloud/html/3rdparty/symfony/console/Application.php","line":149,"function":"doRun","class":"Symfony\\Component\\Console\\Application","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/virtual/poncloud/html/lib/private/Console/Application.php","line":215,"function":"run","class":"Symfony\\Component\\Console\\Application","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/virtual/poncloud/html/console.php","line":100,"function":"run","class":"OC\\Console\\Application","type":"->","args":[]},{"file":"/var/www/virtual/poncloud/html/occ","line":11,"args":["/var/www/virtual/poncloud/html/console.php"],"function":"require_once"}],"File":"/var/www/virtual/poncloud/html/lib/private/AppFramework/Utility/SimpleContainer.php","Line":111,"CustomMessage":"Could not boot files_versionsCould not resolve OCA\\Files_Versions\\Versions\\IVersionManager! Class can not be instantiated"},"userAgent":"--","version":"21.0.0.18"}
Thanks for your report! Unfortunately, I need to validate your overwrite.cli.url from your config.php. What is it set to? (you are free to anonymize your domain but I need the anonymized excact string includin all slashes, dots...)
Ah, sorry for that – here you go @szaimen:
"overwrite.cli.url": "https:\/\/xxx.xxx.xxx",
Thanks! Does this issue still happen if you set your overwrite.cli.url to "overwrite.cli.url": "https://xxx.xxx.xxx/" ? (notice the added slash at the end)
Yes, I'm afraid that didn't do the trick.
@xylo your mentioned patch looks pretty promising. Do you mind creating a PR with that for discussion? Thank you!
@szaimen Sorry, I just wanted to help, but PHP is not really something I want to deal with.
I am somewhat sceptical about the SMTP idea, because in my most recent test some images seem to work (the ones coming with the generic Nextcloud email template) and some don't (the logo configured for the specific Nextcloud instance).
See screenshot (Gmail):

Still, to rule things out – I've attached the full source of that same email (removing domain names, etc. but keeping the exact punctuation and line breaks):
Invitation_ Test event for debugging.eml.txt
Hope this helps!
This issue has been automatically marked as stale because it has not had recent activity and seems to be missing some essential information. It will be closed if no further activity occurs. Thank you for your contributions.
Bumping this because it still persists and I shared all info that was asked for…
This issue has been automatically marked as stale because it has not had recent activity and seems to be missing some essential information. It will be closed if no further activity occurs. Thank you for your contributions.
🙋♂️
This issue has been automatically marked as stale because it has not had recent activity and seems to be missing some essential information. It will be closed if no further activity occurs. Thank you for your contributions.
This issue still seems to be present in version 24.0.5 Could someone reopen this issue?
Hi, please update to 24.0.8 or better 25.0.2 and report back if it fixes the issue. Thank you!
I can confirm this issue still persists in version 25.0.2 when attempting a password reset.

hm... Can you post your config.php and reverse proxy config here?
Sure thing, this would be a snippet from the config:
<?php
$CONFIG = array (
'trusted_domains' =>
array (
0 => 'cloud.c_____r.com',
),
'htaccess.RewriteBase' => '/',
'overwrite.cli.url' => 'https://cloud.c_____r.com',
'installed' => true,
'default_locale' => 'de',
'default_phone_region' => 'de',
'mail_smtpmode' => 'sendmail',
'mail_sendmailmode' => 'pipe',
'mail_from_address' => 'cloud',
'mail_domain' => 'c_____r.com',
'updater.release.channel' => 'stable',
'app_install_overwrite' =>
array (
0 => 'talk_matterbridge',
),
'overwriteprotocol' => 'https',
);
And this is the apache config. I am not using a reverse proxy for this instance:
IfModule mod_ssl.c>
<VirtualHost *:443>
DocumentRoot /var/www/html/cloud
ServerName cloud.c_____r.com
Protocols h2
<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains; preload"
</IfModule>
RewriteEngine on
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/____/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/_____/privkey.pem
</VirtualHost>
</IfModule>