From 7cdb1ef40912dda4ed65c012b3be98aff4def44f Mon Sep 17 00:00:00 2001 From: isaacclad Date: Sat, 27 Jun 2026 17:19:04 +0000 Subject: [PATCH] Redirect legacy /q/* URLs to canonical ladl.link addresses. External /q requests 301/307 to ladl.link; internal X-Ladill-Internal requests still serve content for platform proxying. Co-authored-by: Cursor --- app/Services/Link/LinkPlatformProxy.php | 16 +++++++--------- tests/Feature/LinkRedirectTest.php | 5 +++++ 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/app/Services/Link/LinkPlatformProxy.php b/app/Services/Link/LinkPlatformProxy.php index 3c911ff..b2a3b0e 100644 --- a/app/Services/Link/LinkPlatformProxy.php +++ b/app/Services/Link/LinkPlatformProxy.php @@ -57,15 +57,13 @@ class LinkPlatformProxy /** @return array */ private function forwardHeaders(Request $request): array { - $headers = []; - foreach (['Accept', 'Accept-Language', 'User-Agent', 'Referer'] as $name) { - $value = $request->header($name); - if ($value !== null) { - $headers[$name] = $value; - } - } - - return $headers; + return array_filter([ + 'Accept' => $request->header('Accept'), + 'Accept-Language' => $request->header('Accept-Language'), + 'User-Agent' => $request->header('User-Agent'), + 'Referer' => $request->header('Referer'), + 'X-Ladill-Internal' => '1', + ]); } /** @param array> $headers */ diff --git a/tests/Feature/LinkRedirectTest.php b/tests/Feature/LinkRedirectTest.php index 8374b09..862fa69 100644 --- a/tests/Feature/LinkRedirectTest.php +++ b/tests/Feature/LinkRedirectTest.php @@ -59,5 +59,10 @@ class LinkRedirectTest extends TestCase $this->get('https://ladl.link/qrpage') ->assertOk() ->assertSee('QR page'); + + Http::assertSent(function ($request) { + return $request->url() === 'https://ladill.com/q/qrpage' + && $request->hasHeader('X-Ladill-Internal', '1'); + }); } }