Skip to content

Add prerender-laravel middleware for Laravel 11+#6

Open
Lasalot wants to merge 1 commit intomainfrom
add-prerender-laravel
Open

Add prerender-laravel middleware for Laravel 11+#6
Lasalot wants to merge 1 commit intomainfrom
add-prerender-laravel

Conversation

@Lasalot
Copy link
Copy Markdown
Collaborator

@Lasalot Lasalot commented Apr 20, 2026

Summary

  • Laravel 11+, PHP 8.2+, Guzzle 7, PSR bridge for response conversion
  • Auto-registers via service provider (extra.laravel.providers)
  • Whitelist/blacklist with wildcard patterns (static assets excluded by default)
  • Updated bot list including AI crawlers (GPTBot, ClaudeBot, Perplexity, OAI-SearchBot, AmazonBot)
  • PRERENDER_ENABLE toggle for disabling in local dev
  • full_url option to send complete URL including query string
  • Pest tests with Guzzle MockHandler

Test plan

  • ./vendor/bin/pest passes all 7 test cases
  • Browser UA → passes through
  • Bot UA → receives prerendered response
  • Static asset (blacklisted) → passes through
  • _escaped_fragment_ → prerendered
  • X-BUFFERBOT header → prerendered
  • POST → passes through
  • ConnectException → graceful fallback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant