Jump to content

An exception occured trying to figure out server_version / SQLSTATE[HY000] [2026] TLS/SSL error: invalid directory


Recommended Posts

My Prestashop admin module has stopped working. This has been without setting changes and service provider confirmed no changes from their side. I initially got Oops 500 inernal server error. When running debug I get An exception occurred trying to figure out server_version.

I have tried to set the DB version in doctrine.yml as suggested on forums. My db is MariaDB 11.4.7.  I have tried a couple of setting and set version as mariadb-11.4.7 . I have also tried just as 8.0 (mysql version). However I am then getting another error :
SQLSTATE[HY000] [2026] TLS/SSL error: invalid directory

I am running Prestashop 8

 

image.thumb.png.6961208ccc8b2f636b7530cb1ec400da.png

Edited by AK4 (see edit history)
Link to comment
Share on other sites

What could be happening?  It's possible that your hosting upgraded mariadb, maybe this  will help.

reference:  https://mariadb.com/docs/server/security/securing-mariadb/securing-mariadb-encryption/data-in-transit-encryption/securing-connections-for-client-and-server

PrestaShop 8 uses Symfony/Doctrine to handle database connections.
o With new MariaDB 11+ or some MySQL servers, Doctrine cannot detect your database version, so you see a "server_version" error.
o When you try to fix that, you get a new error: SQLSTATE[HY000] [2026] TLS/SSL error: invalid directory. This means PrestaShop is trying to use SSL for the database, but your server or config is missing SSL info or files.

How to fix it in PrestaShop 8:

Edit your database config file:
o The file to edit is:
/config/packages/doctrine.yaml

Add or update these settings under doctrine: dbal:
(be careful with spaces/indentation):

YAML files require exact spacing—use spaces, not tabs, and make sure each setting is lined up correctly under its parent. Incorrect indentation will cause errors or the settings to be ignored. For example, options: must be under dbal:, and 1007: false must be under options:.

doctrine:
    dbal:
        driver: 'pdo_mysql'
        server_version: 'mariadb-11.4.7'  # Or try 'mariadb-11.0' or just 'mariadb'
        options:
            1007: false   # disables SSL CA requirement (fixes TLS/SSL error)

o The server_version line fixes the version detection error.
o The options: 1007: false line disables the SSL CA requirement that causes the "invalid directory" error.

Clear the PrestaShop cache:
o Using the command line:
php bin/console cache:clear
o Or, manually delete everything inside:
/var/cache/prod/ and /var/cache/dev/

Reload your admin page:
o If you still get a "server_version" error, try changing the version to just mariadb-11.0 or mariadb but also contact your hosting company
o If you still get an SSL error, double-check your spacing and that options: 1007: false is in place. contact your hosting company

Edited by El Patron (see edit history)
Link to comment
Share on other sites

Thank you for the advise. The MariaDB setting definitely is working and applied. But even wtih 1007: false I still get the ssl error. I have checked spacing etc many times so very sure syntax  is correct

image.thumb.png.ebabd2b03e6705a4994f07d0b1e7fdbb.png

Link to comment
Share on other sites

  • 1 month later...

Hello,

I faced exactly the same problem I think. My website was perfectly working, but impossible to access the back office. I can now access after applying this :

 

1013 -> 1016.

Hope this will help.

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...