From 91fdaf2a86ccb48b1a9efdb65ab849cf6a5b9728 Mon Sep 17 00:00:00 2001 From: Daniel Wilkowski Date: Wed, 24 Jan 2024 16:08:31 +0100 Subject: [PATCH] Paginated homepage /?page=2 is canonical --- app/Http/Middleware/RedirectToCanonicalUrl.php | 5 +++-- tests/Unit/Canonical/TrailingSlash/Test.php | 8 ++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/app/Http/Middleware/RedirectToCanonicalUrl.php b/app/Http/Middleware/RedirectToCanonicalUrl.php index ac06ef62e0..6e6292b653 100644 --- a/app/Http/Middleware/RedirectToCanonicalUrl.php +++ b/app/Http/Middleware/RedirectToCanonicalUrl.php @@ -20,10 +20,11 @@ public function handle(Request $request, callable $next): HttpFoundation\Respons private function hasTrailingSlash(Request $request): bool { - if ($request->getRequestUri() === '/') { + $uri = $request->getPathInfo(); + if ($uri === '/') { return false; } - return \str_ends_with($request->getPathInfo(), '/'); + return \str_ends_with($uri, '/'); } private function hasTrailingQuerySeparator(Request $request): bool diff --git a/tests/Unit/Canonical/TrailingSlash/Test.php b/tests/Unit/Canonical/TrailingSlash/Test.php index bea7bc8589..78b34813a7 100644 --- a/tests/Unit/Canonical/TrailingSlash/Test.php +++ b/tests/Unit/Canonical/TrailingSlash/Test.php @@ -40,6 +40,14 @@ public function homepage() $this->assertCanonicalGet('/'); } + /** + * @test + */ + public function homepagePage() + { + $this->assertCanonicalGet('/?page=2'); + } + /** * @test */