From c047ede384e626b8bec1fe7318cde4683ad279ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20Prai=C3=9F?= Date: Tue, 22 Apr 2025 15:48:48 +0200 Subject: [PATCH] [5.x] Fix static cache file paths for multisite setups --- src/StaticCaching/Cachers/FileCacher.php | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/StaticCaching/Cachers/FileCacher.php b/src/StaticCaching/Cachers/FileCacher.php index 0a0a594b81..e3f01258bf 100644 --- a/src/StaticCaching/Cachers/FileCacher.php +++ b/src/StaticCaching/Cachers/FileCacher.php @@ -67,7 +67,10 @@ public function cachePage(Request $request, $content) $content = $this->normalizeContent($content); - $path = $this->getFilePath($url); + $parsed = parse_url($url); + $domain = $parsed['scheme'].'://'.$parsed['host']; + $site = optional(Site::findByUrl($domain))->handle(); + $path = $this->getFilePath($url, $site); if (! $this->writer->write($path, $content, $this->config('lock_hold_length'))) { return; @@ -87,8 +90,10 @@ public function preventLoggingRewriteWarning() public function getCachedPage(Request $request) { $url = $this->getUrl($request); - - $path = $this->getFilePath($url); + $parsed = parse_url($url); + $domain = $parsed['scheme'].'://'.$parsed['host']; + $site = optional(Site::findByUrl($domain))->handle(); + $path = $this->getFilePath($url, $site); if ($this->logRewriteWarning && ! $this->isLongQueryStringPath($path)) { Log::debug('Static cache loaded ['.$url.'] If you are seeing this, your server rewrite rules have not been set up correctly.'); @@ -100,8 +105,11 @@ public function getCachedPage(Request $request) public function hasCachedPage(Request $request) { $url = $this->getUrl($request); + $parsed = parse_url($url); + $domain = $parsed['scheme'].'://'.$parsed['host']; + $site = optional(Site::findByUrl($domain))->handle(); - return File::exists($this->getFilePath($url)); + return File::exists($this->getFilePath($url, $site)); } /**