diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 42d0669c1a340bc6ddb1f80d57eac264bb59b34d..97e9c3130d96c96452bdde691f9022311c9155da 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -12,6 +12,7 @@ Unreleased
 Added
 ~~~~~
 
+* Support config files in sub-directories
 * Support (icon) tabs in the top navbar.
 
 Fixed
diff --git a/aleksis/core/settings.py b/aleksis/core/settings.py
index 95f6870d7986effeb778905027cc5a61c9fe6049..8e504cf2127382ab7fff0cb85967926d538a02c5 100644
--- a/aleksis/core/settings.py
+++ b/aleksis/core/settings.py
@@ -21,6 +21,10 @@ for directory in DIRS_FOR_DYNACONF:
     SETTINGS_FILE_FOR_DYNACONF += glob(os.path.join(directory, "*.ini"))
     SETTINGS_FILE_FOR_DYNACONF += glob(os.path.join(directory, "*.yaml"))
     SETTINGS_FILE_FOR_DYNACONF += glob(os.path.join(directory, "*.toml"))
+    SETTINGS_FILE_FOR_DYNACONF += glob(os.path.join(directory, "*/*.json"))
+    SETTINGS_FILE_FOR_DYNACONF += glob(os.path.join(directory, "*/*.ini"))
+    SETTINGS_FILE_FOR_DYNACONF += glob(os.path.join(directory, "*/*.yaml"))
+    SETTINGS_FILE_FOR_DYNACONF += glob(os.path.join(directory, "*/*.toml"))
 
 _settings = LazySettings(
     ENVVAR_PREFIX_FOR_DYNACONF=ENVVAR_PREFIX_FOR_DYNACONF,