Help
Troubleshooting
Installer and first run#
| Symptom | Cause | Fix |
|---|
Redirected to /padmin/install again and again | data/ isn't writable, so the installer can't finish | Make data/ writable by the web user (chmod 775 data) and retry |
| "Fix the required items" on the installer | PHP is older than 8.1 or a folder isn't writable | The list under the heading says what to fix |
Every URL except / returns 404 | The root .htaccess is missing (FTP clients hide dotfiles) | Re-upload it; enable "show hidden files" |
Blank page or HTTP 500 on /padmin | An error before the page rendered | Check the server's PHP error log. If it says something like Cannot redeclare go(), a shared host defines a short global function — Timber prefixes its own helpers with admin_ to avoid this |
Admin#
| Symptom | Fix |
|---|
| "Session expired" (419) | Reload the page; an old tab's CSRF token expired. Plain forms need a hidden _csrf field |
| Can't log in after several tries | Wait 10 minutes (the throttle is per IP) |
| Forgot the password | php _dev/reset-password.php "new password" on the server (or --add-admin if no admin can sign in). See Users & roles |
| "Not allowed" on a screen | Your role doesn't include it. Ask an administrator, or see the permissions table in Users & roles |
Dashboard says /data/settings.json is downloadable | On nginx, add the rules from _dev/nginx.conf.example and change your password |
Uploads#
| Symptom | Fix |
|---|
| Upload fails or the page says the file is too big | Raise upload_max_filesize and post_max_size (the bundled .htaccess/.user.ini try to). For a WordPress export, drop the file into data/_migrate/inbox/ instead |
| "Content doesn't match its extension" | Re-export the file in the right format |
Email#
| Symptom | Fix |
|---|
| Messages don't arrive | Emails → Send a test, then read the sent log for the error. Check SPF/DKIM and the from address |
| Form messages exist but no email | Submissions are always saved first — they're in Forms → Submissions. Set up a transport in Emails |
Pages and caching#
| Symptom | Fix |
|---|
| A page slug doesn't load | A redirect with the same path runs first, or the slug collides with a reserved route. Check Redirects and rename |
| Changes not visible | A page cache or CDN in front. Purge it (assets are cache-busted automatically) |
| Favicon missing | Keep a real favicon.ico at the site root; some hosts answer that URL themselves |
| A version preview shows a 404 | Private versions need a login or the share key ?key=… |
WordPress migration#
| Symptom | Fix |
|---|
| "Nothing could be read" | Add at least an export file, a theme zip, a saved homepage or a site address |
| The address can't be read | The site may block bots, or require HTTPS — try a saved homepage instead |
| Images still load from the old site | Press Download the next batch on the done page; failed ones are listed |
| Colours or fonts look off | Edit them on the review step, or edit the generated theme's theme.css afterwards |
Still stuck?#
Check the server's error log first, then open an issue (see Open source & contributing) with your PHP version, web server, and the steps you took.