Skip to content
Maarten edited this page Aug 13, 2024 · 29 revisions

The Frequently Asked Questions area should help you to find solutions for common problems.

Admin login fails

This is mostly due to the wrong login name or passphrase. Open application.ini and modify the admin name and pass there. Keep the passphrase setting empty and SnappyMail will create one (just like at install). For further issues check the logs.

How do I enable logging?

Logs help the developer a lot to identify and fix problems. Logs are enabled in the application.ini file, that can be found in the directory …/data/_data_/_default_/configs of your SnappyMail installation. There are different types of logs:

  • Server side log (PHP)
    • Under [logs] OR [debug], set enable = On.
    • Get your log from …/data/_data_/_default_/logs.
    • Under [logs] you can also change level = 4 to show/hide some messages from the logs. (when [debug] enabled it logs everything)
  • Client side log (Javascript)
    • Under [debug], set javascript = On.
    • Click F12 to open the console in your browser and get the log from there.

When I click on 'Display external images', nothing happens.

This is a security feature. You can enable it the following way:

  • Login to the admin UI.
  • Go to settings.
  • Enable 'Use local proxy for external images'.

See also https://github.com/the-djmaze/snappymail/wiki/Admin-Manual#menu-security

Enable Filters

SnappyMail requires Sieve for managing filters. Sieve must be installed on the IMAP server and integrated in the IMAP daemon. Currently there is no other way to manage filters. When the IMAP supports Sieve, you can enable this in the Admin Panel of SnappyMail (?admin) at Domains => "YOUR DOMAIN" => SIEVE. There you have to check "Allow sieve scripts" and enter the data of your server (normally your IMAP server).

After enabling filters in the Admin Panel the users can enter in their settings and should see a new menu "Filters" where for example an vacation message can be activated.

[105] Missing snappymail/v/x.x.x/include.php

When you upgrade, a lot of files are replaced. If /snappymail/v/x.x.x/ exists, open /index.php and check the value of APP_VERSION. When they are the same, your PHP OPcache does not reload the files and has the old file in cache and uses that. Reload your PHP-FPM or FastCGI to get this solved.

Nextcloud "App with id snappymail has invalid signature"

Sometimes i upload a new version of the release due to "built release" mistakes.
But apps.nextcloud.com doesn't allow me to do anything (remove, revoke, special version numbers, etc.).
So the result is that i can only overwrite an existing release and wait a few hours.
Then Nextcloud updates to the signature and invalid becomes valid.
It would have been good if NextCloud allowed version numbers like '2.27.3.0' and '2.27.3.1' but it marks them as "Unstable"

2FA

Everyone loves it, so we support TOTP. Hardware keys are not supported yet, but with WebAuthn this could be possible.

OAuth2 / OAUTHBEARER

This login mechanism is used by Gmail, Outlook and some others. It is not fully supported by SnappyMail due to a few reasons:

  1. You must register your SnappyMail instance (and domain name) at the OAuth provider (try it, and find the horror process)
  2. Access and Refresh tokens expire randomly so there's no clue when operations fail and user must login again
  3. User experience is off as you leave the website to a different one and come back later (hopefully)
  4. There's no guarantee that the login response contains a valid email address to use
  5. OpenID Connect (OIDC) is better, but not perfect yet.

Gmail

For App Passwords, read: https://support.google.com/mail/answer/185833

v2.36.1+ supports Gmail OAuth2 as extension:

  1. Go to https://console.cloud.google.com/apis/dashboard
  2. Create a project create
  3. Create OAuth credentials credentials credentials-clients
  4. Setup the credentials in the SnappyMail extension afbeelding