diff --git a/Classes/Middleware/FrontendCacheMiddleware.php b/Classes/Middleware/FrontendCacheMiddleware.php new file mode 100644 index 00000000000..9a8340b61db --- /dev/null +++ b/Classes/Middleware/FrontendCacheMiddleware.php @@ -0,0 +1,35 @@ +getAttribute( + 'frontend.cache.instruction', + new CacheInstruction(), + ); + + // Disable the cache and give a reason + $cacheInstruction->disableCache('EXT:staticfilecache: Cache is disabled'); + + // Write back the cache instruction to the attribute + $request = $request->withAttribute('frontend.cache.instruction', $cacheInstruction); + } + return $handler->handle($request); + } +} diff --git a/Configuration/RequestMiddlewares.php b/Configuration/RequestMiddlewares.php index b0c84b13550..a36e2b1664a 100644 --- a/Configuration/RequestMiddlewares.php +++ b/Configuration/RequestMiddlewares.php @@ -5,6 +5,7 @@ use SFC\Staticfilecache\Middleware\CookieCheckMiddleware; use SFC\Staticfilecache\Middleware\FallbackMiddleware; use SFC\Staticfilecache\Middleware\FrontendUserMiddleware; +use SFC\Staticfilecache\Middleware\FrontendCacheMiddleware; use SFC\Staticfilecache\Middleware\GenerateMiddleware; use SFC\Staticfilecache\Middleware\PrepareMiddleware; @@ -40,6 +41,15 @@ 'staticfilecache/generate', ], ], + 'staticfilecache/frontend-cache' => [ + 'target' => FrontendCacheMiddleware::class, + 'after' => [ + 'typo3/cms-frontend/authentication', + ], + 'before' => [ + 'staticfilecache/generate', + ], + ], 'staticfilecache/cookie-check' => [ 'target' => CookieCheckMiddleware::class, 'before' => [