diff --git a/core/lib/Drupal/Core/Site/Settings.php b/core/lib/Drupal/Core/Site/Settings.php
index 64965ceb3cdad9d9d16ef7bff76359d11660fa9d..245bc3537e67fe7bb1357195ebd313025dd5ed40 100644
--- a/core/lib/Drupal/Core/Site/Settings.php
+++ b/core/lib/Drupal/Core/Site/Settings.php
@@ -190,7 +190,7 @@ public static function initialize($app_root, $site_path, &$class_loader) {
         // the database. Therefore, allow the connection info to specify an
         // autoload directory for the driver.
         if (isset($info['autoload'])) {
-          $class_loader->addPsr4($info['namespace'] . '\\', $info['autoload']);
+          $class_loader->addPsr4($info['namespace'] . '\\', $app_root . '/' . $info['autoload']);
         }
       }
     }
diff --git a/core/tests/Drupal/Tests/Core/Site/SettingsTest.php b/core/tests/Drupal/Tests/Core/Site/SettingsTest.php
index b5ab4f4f1e4120c406e6c78edde8751cb3f46b8c..5d860aa139255b8cd54f4eb99cc801cc51419da7 100644
--- a/core/tests/Drupal/Tests/Core/Site/SettingsTest.php
+++ b/core/tests/Drupal/Tests/Core/Site/SettingsTest.php
@@ -336,7 +336,7 @@ public function testDatabaseInfoInitialization(string $driver, ?string $namespac
     if (!empty($expected_autoload)) {
       $class_loader->expects($this->once())
         ->method('addPsr4')
-        ->with($expected_namespace . '\\', $expected_autoload);
+        ->with($expected_namespace . '\\', vfsStream::url('root') . '/' . $expected_autoload);
     }
     else {
       $class_loader->expects($this->never())