Troubleshooting

Contents
  1. Quick diagnosis: Éclair CMS troubleshooting in one table
  2. Installation problems
  3. PHP 8.1 or later required
  4. A check is red or orange in the setup wizard
  5. “Installation locked”
  6. 404 errors, 500 errors and error pages
  7. 404 error on every page except the home page
  8. 500 error right after uploading
  9. The “Oups, un court-circuit.” error page
  10. Show error details
  11. Login and accounts
  12. Forgotten password or lost 2FA: what should you do?
  13. “Too many attempts. For security, try again in a few minutes.”
  14. The two-factor authentication code is rejected
  15. “Security token expired” or “Session expired”
  16. “First choose your own password”
  17. Forgotten admin URL
  18. URL, HTTPS and cache
  19. Site address not verified on the Security page
  20. “Enable HTTPS with your host first…”
  21. Why don't my changes show up on the site?
  22. Images, emails and the contact form
  23. Why aren't images converted to WebP?
  24. An image upload is refused
  25. Why aren't the form emails arriving?
  26. The visitor sees “Sending failed. Check the fields and try again.”
  27. AI assistant
  28. MCP connector
  29. Shop
  30. Art direction fonts
  31. Depending on your host
  32. Frequently asked questions about troubleshooting

This Éclair CMS troubleshooting page starts from what you see: a message, a 404 error, an email that never arrives. Begin with the quick diagnosis table, then open the section for your symptom. Each solution is based on the official guide and on the code of Éclair 1.8.0; messages are quoted exactly as they're displayed.

Quick diagnosis: Éclair CMS troubleshooting in one table

SymptomLikely causeSolution
Every page except the home page returns a 404.htaccess not uploaded, or rewriting disabledUpload the .htaccess file (it's hidden); uncomment RewriteBase / if your host requires it
500 error right after uploadingA .htaccess directive is refusedRemove the block in question or contact your host
“Éclair a besoin de PHP 8.1 ou plus récent” (shown in French)PHP version too oldChange the PHP version in your customer area
“Installation locked”The 2-hour window has passedDelete data/install-window.php and reload
Forgotten password or lost 2FA phoneNo other administrator to help youThe data/reset.php file
“Too many attempts…”Brute-force limit reachedWait 15 minutes, or have the address unblocked
Site address not verified (Security page)The server can't reach itselfVerify the site address once the domain is in place
Images not converted to WebPGD extension missingEnable GD in the PHP panel
Form emails missingSender refused, message filed as spamCheck Messages and Settings › Contact
“Can’t reach…” in the assistantOutgoing connections blockedAsk your host to allow the API
Claude or ChatGPT won't connectNo HTTPS, subfolder, firewallHTTPS, installation at the root, let /_eclair/ and /.well-known/ through
Heading font replaced by a fallback fontFont download blockedTry again later by saving again
“Oups, un court-circuit.” (shown in French)Unexpected PHP errorNote the Référence and check the Security page

Installation problems

These Éclair CMS troubleshooting cases come up in the first few minutes, before you even log in to the admin for the first time.

PHP 8.1 or later required

The page, shown in French only, reads “Éclair a besoin de PHP 8.1 ou plus récent” (“Éclair needs PHP 8.1 or later”) and also gives your current version. Change the PHP version in your host's customer area (often in one click), then reload the page. Aim for PHP 8.3: the setup wizard recommends upgrading to it if you're below 8.2, and the Security page only ticks “Supported PHP version” from 8.2 onward. The support schedule for PHP versions is published on php.net.

A check is red or orange in the setup wizard

CheckWhat to do
mbstring, json, dom, session or zlib extensionRequired: enable it in your host’s PHP panel.
Folder “data”, “cache” or “media” is writableGive this folder write permissions (755) via FTP.
Clean URLs (URL rewriting) inactiveCheck that the .htaccess file was uploaded (it’s a hidden file).
Secure connection (HTTPS)Enable your host’s free SSL certificate (Let’s Encrypt), then reload over https://.
Image processing (GD)Without GD, images won’t be resized or converted.
One-click backups (ZIP)Zip extension missing: backups will be done via FTP.
AI assistant (cURL and encryption)curl, sodium or openssl extension missing: the AI assistant can’t be turned on.

If the message “Enable JavaScript to install Éclair.” appears, allow JavaScript in your browser. Since 1.8.0, zlib is required: the admin screens ship compressed.

“Installation locked”

For security, installation must be completed within 2 hours of the first visit: otherwise, anyone could take over a site that was uploaded and then forgotten. To reopen the window, delete the data/install-window.php file with your FTP client or your host's file manager, then reload the page.

404 errors, 500 errors and error pages

404 error on every page except the home page

The .htaccess file wasn't uploaded (it's a hidden file) or URL rewriting is disabled. Turn on the display of hidden files in your FTP client, upload the .htaccess file again to Éclair's root, then reload. If your host requires it, uncomment the RewriteBase / line. On Nginx, .htaccess is ignored: reproduce the rules described in Files, folders and URLs.

500 error right after uploading

Your host refuses a .htaccess directive. This is very rare: Éclair only uses directives tolerated on shared hosting. Remove the block in question, or ask your host which one causes the problem.

The “Oups, un court-circuit.” error page

This page, always shown in French (“Oops, a short circuit.”), reports an unexpected error and displays a reference, labeled Référence. Log in to the admin: the Security page lists the Recent technical errors with this reference, the message and the location. The Rebuild the index and clear the cache button, shown in that section, rebuilds the content index (data/index.php) and clears the cache.

Show error details

This is the basic tool for any stubborn bit of Éclair CMS troubleshooting. Create an eclair-config.php file at the root, based on eclair-config.exemple.php, with the line define('ECLAIR_DEBUG', true);. Errors are then shown in detail. This mode also turns off the static cache: delete the line as soon as the problem is solved.

Login and accounts

Forgotten password or lost 2FA: what should you do?

If there's another administrator, they open your account in Users and click Reset password (a temporary password is generated) or Disable 2FA. With 2FA turned on, one of your 8 backup codes can also stand in for the code from your phone.

If you're the only administrator, create a data/reset.php file via FTP containing exactly these three lines:

<?php exit; ?>
your-address@example.com
YourNewPassword2026
  1. Replace the second line with your account's email and the third with your new password.
  2. Within 24 hours, log in with that email and that new password.
  3. The password is replaced, two-factor authentication for the account is turned off, your other sessions are closed and the file is deleted automatically.

Nobody else can trigger this recovery: they would need to know the file's contents. A file without the first line, or created more than 24 hours earlier, is refused and deleted. The new password must follow the usual rules (at least 10 characters, not a common password); otherwise, the security log shows “FTP reset rejected”.

“Too many attempts. For security, try again in a few minutes.”

After 10 failed attempts in 15 minutes from the same network, login is blocked for 15 minutes; after 30 failed attempts in an hour on the same account, that account is blocked for an hour on unknown devices. Your usual device has its own counter: an attacker who fails on purpose can't lock it. Another administrator can lift a block in Security › Sessions and blocks › Unblock.

The two-factor authentication code is rejected

The message “Wrong code. Check your phone’s time or use a backup code.” almost always comes from a clock that's out of sync: the code changes every 30 seconds. Set your phone's time to automatic. After 10 wrong codes, two-factor authentication for the account is locked for 15 minutes and its owner is notified by email.

“Security token expired” or “Session expired”

The page stayed open too long, or the session ended after the inactivity period (240 minutes by default, adjustable in Settings › Advanced). Reload the page or log in again in another tab. In the editor, nothing is lost: when you reopen the content, a local backup draft offers “An unsaved version was found. Restore it?”.

“First choose your own password”

An account created or reset by an administrator receives a temporary password. Until it's replaced in My profile, the rest of the admin stays closed.

Forgotten admin URL

Download the data/site.php file via FTP and open it in a text editor, without changing it. The value after "admin_path" is your admin URL: "admin_path": "my-office" corresponds to https://example.com/my-office.

URL, HTTPS and cache

Site address not verified on the Security page

Your server can't call itself at the site's address: host firewall, DNS not propagated yet… The site works normally, but without redirects to the official URL (with or without www). Once the domain is in place, click Verify the site address. If that fails, the message “Verification failed: your server can’t reach…” appears; ask your host whether requests from the server to its own domain are blocked.

“Enable HTTPS with your host first…”

This message appears if you check Force HTTPS while you're logged in over http://. Enable the certificate with your host, log in again over https://, then check the option: the official URL then switches to https://.

Why don't my changes show up on the site?

  1. Check the status: a Draft is never visible; Scheduled content appears at the site's time (the time zone in Settings › General).
  2. A published product stays hidden as long as the shop is closed.
  3. Éclair's cache clears itself on every change. If a CDN or a proxy sits in front of your site, clear its cache too.
  4. As a last resort: Settings › Advanced › Clear cache, then reload the page.

Images, emails and the contact form

Why aren't images converted to WebP?

The GD extension (or its WebP support) is missing. The media library says so: “The GD extension is missing on your hosting: images are kept as is.” Enable GD in your host's PHP panel. WebP versions are created on upload: upload your important images again afterwards, since the earlier ones stay in JPG or PNG.

An image upload is refused

MessageSolution
“Unsupported format: JPG, PNG, WebP or GIF only.”Convert the image: SVG and other formats are refused.
“Image too heavy (20 MB max).”Compress or shrink the file.
“File too large for your hosting (max …).”Your PHP upload limit is lower: shrink the image, or raise the limit in the PHP panel.
“Image too large for your hosting’s memory: shrink it to under 4000 pixels wide.”Resize the image before uploading it.
“Invalid or oversized image dimensions (40 megapixels maximum).”Resize the image.
“Image rejected: it contains code.”A booby-trapped or damaged file: don't use it.
“Couldn’t save the image: check the media folder permissions.”Give the media/ folder write permissions.

Why aren't the form emails arriving?

The visitor sees “Sending failed. Check the fields and try again.”

The fields are incomplete (the message must be at least 5 characters long), or an anti-spam limit has been reached: 5 messages per network every 10 minutes, 100 per day for the whole site. Beyond that, the form refuses submissions for 30 minutes for that network, or 6 hours for the site.

AI assistant

Message or symptomSolution
“API key rejected”The key was copied incompletely or has been revoked: paste it again and click Test the connection.
“Out of credit”Top up your account with the provider.
“This month’s AI budget is used up”Raise the Maximum monthly budget (dollars) in Settings › AI assistant, or wait until next month.
The reply arrives all at onceYour host's buffering is holding back the stream: everything works, just without the live effect. On Nginx, add fastcgi_buffering off; to the PHP block.
“Can’t reach…”Your host blocks outgoing connections: ask them to allow api.anthropic.com or api.openai.com, and the image generator you chose.
The assistant doesn't appearIt needs the cURL extension and encryption (sodium or openssl), a provider chosen with its key, and, for an editor, the Editors can use the assistant option.
The keys seem to have disappearedYou added or changed ECLAIR_SECRET after saving them: paste them again.
“Cancel” is no longer offeredSomeone has edited the content since: use the editor's Version history.

The Requests per person per day quota (60 by default) is set in the same place as the budget. The complete setup is in Turning on the built-in AI assistant.

MCP connector

The connection steps are in Connect Claude to your site and Connect ChatGPT to your site.

Shop

The complete setup is in Selling with the lightweight shop.

Art direction fonts

An art direction's heading font is downloaded only once by your server, from Fontsource (at cdn.jsdelivr.net), then served by your site. If your host blocks outgoing connections, a message lets you know and the site uses a fallback font from the same family (serif, condensed…). Try again later by saving Settings › Appearance again, or ask your host to allow that address.

Depending on your host

A good part of Éclair CMS troubleshooting depends on what your host allows. The five points to check:

Each host's specifics are covered in Choosing your hosting and in the universal cPanel, Plesk and DirectAdmin method.

Frequently asked questions about troubleshooting

How do I turn on Éclair's debug mode?

Create eclair-config.php next to index.php (copy eclair-config.exemple.php) with define('ECLAIR_DEBUG', true);. Delete the line once the problem is solved: this mode turns off the static cache.

Is my site down if the Security page says the site address isn't verified?

No. The site works normally, but Éclair doesn't redirect anyone to the official URL until it's verified. Click Verify the site address once the domain is in place.

What if no solution on this Éclair CMS troubleshooting page works?

Note your Éclair and PHP versions, your host and the error reference, then open an issue in Éclair's GitHub issues. Never include a password or an API key.