diff --git a/metager/app/Localization.php b/metager/app/Localization.php
index ba8e306f816c020203d735de0580f07bcf5bc45a..53091511323a075e07c7788056c29d9b840648a4 100644
--- a/metager/app/Localization.php
+++ b/metager/app/Localization.php
@@ -24,10 +24,13 @@ class Localization
 
         if (stripos($host, "metager.org") !== false) {
             App::setLocale("en-US");
+            App::setFallbackLocale("en");
         } else if (stripos($host, "metager.es") !== false) {
             App::setLocale("es-ES");
+            App::setFallbackLocale("es");
         } else {
             App::setLocale("de-DE");
+            App::setFallbackLocale("de");
         }
 
         $locale_path = LaravelLocalization::setLocale();
@@ -36,8 +39,7 @@ class Localization
         // Our locale includes the requested region however our translated strings are not differentiating regions
         // We need to define a fallback locale for each regional locale to just use the language part stripping the region
         if (\preg_match("/^([a-zA-Z]{2,5})-[a-zA-Z]{2,5}$/", $locale, $matches)) {
-            App::setLocale($matches[1]);
-            $locale = config("app.locale");
+            App::setFallbackLocale($matches[1]);
         }
 
         return $locale_path;
diff --git a/metager/app/Providers/AppServiceProvider.php b/metager/app/Providers/AppServiceProvider.php
index e8726adf6ec52aba439df3ef9e25f07a339f6626..caaa9519f8e8a28c5d6cef046079bec2c793b0bd 100644
--- a/metager/app/Providers/AppServiceProvider.php
+++ b/metager/app/Providers/AppServiceProvider.php
@@ -2,13 +2,8 @@
 
 namespace App\Providers;
 
-use Illuminate\Queue\Events\JobProcessed;
-use Illuminate\Queue\Events\JobProcessing;
-use Illuminate\Support\Facades\App;
-use Illuminate\Support\Facades\Request;
+use App\Localization;
 use Illuminate\Support\ServiceProvider;
-use \Mcamara\LaravelLocalization\Facades\LaravelLocalization;
-use Queue;
 
 class AppServiceProvider extends ServiceProvider
 {
@@ -19,6 +14,12 @@ class AppServiceProvider extends ServiceProvider
      */
     public function boot()
     {
+        if (app()->routesAreCached()) {
+            // Apply the correct locale configuration
+            // This is also done in RouteServiceProvider if routes are not cached
+            Localization::setLocale();
+        }
+
         \Prometheus\Storage\Redis::setDefaultOptions(
             [
                 'host' => config("database.redis.default.host"),