Skip to content

Troubleshooting

You can find here some common issues and how to fix them. If you encounter an issue that is not listed here, please open an issue or join our Discord.

Failed to ensure that the database directory exists

Section titled “Failed to ensure that the database directory exists”

Upon starting the server or a script, you may encounter this error

Failed to ensure that the database directory exists, error while creating the directory
Error: EACCES: permission denied, mkdir './app-data/db'

Before accessing the DB sqlite file, the server will try to ensure that the database directory exists, and if it doesn’t, it try will create it. But in case of insufficient permissions, it will fail.

To fix this, you can either:

  • Create the directory manually mkdir -p <your-app-data-dir>/db
  • Ensure that the directory is owned by the user running the container
  • Run the server as root (not recommended)

Papra ensures CSRF protection by validating the Origin header in requests. This check ensures that requests originate from the application or a trusted source. Any request that does not originate from a trusted origin will be rejected.

If you are self-hosting Papra, you may encounter an error stating that the application origin is invalid while trying to login or register.

To fix this, you can either:

  • Update the APP_BASE_URL environment variable to match the url of your application (e.g. https://papra.my-homelab.tld)
  • Add the current url to the TRUSTED_ORIGINS environment variable if you need to allow multiple origins, comma separated. By default the TRUSTED_ORIGINS is set to the APP_BASE_URL
  • If you are using a reverse proxy, you may need to add the url to the TRUSTED_ORIGINS environment variable