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 directoryError: 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)
Invalid application origin
Section titled “Invalid application origin”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 theTRUSTED_ORIGINS
is set to theAPP_BASE_URL
- If you are using a reverse proxy, you may need to add the url to the
TRUSTED_ORIGINS
environment variable