// use case
Expose your Laravel dev server to GitHub for GitHub webhooks
Reserve a stable subdomain
On the lrok free plan you keep one reserved subdomain forever. Pick a name your GitHub dashboard can hold onto — webhook URLs that survive laptop restarts mean fewer dashboard re-pastes.
$ lrok reserve lar-github Reserved https://lar-github.lrok.ioRun your Laravel app
Start the dev server on port 8000 (the Laravel default).
$ php artisan serveTunnel localhost to the public URL
lrok forwards https://lar-github.lrok.io/api/webhook → http://127.0.0.1:8000/api/webhook. The flag --hint binds your reserved subdomain to this tunnel.
$ lrok http 8000 --hint lar-github Forwarding https://lar-github.lrok.io -> http://127.0.0.1:8000Paste the URL into GitHub
Repository → Settings → Webhooks → Add webhook. Paste https://lar-github.lrok.io/api/webhook as the destination.
Watch deliveries land in the request inspector
Every webhook GitHub sends shows up at lrok.io/dashboard with full body, headers, status, and latency. Re-deliver any request to your Laravel handler with one click. GitHub's X-Hub-Signature-256 header is HMAC-SHA-256 over the raw body. The "Recent Deliveries" tab lets you replay any payload — combine it with lrok's built-in inspector for a tight loop.
// why lrok for this
lrok's reserved subdomain is free and lives forever, so your GitHub github webhooks URL never rotates. $9/mo flat for unlimited tunnels — no SSO tax, no enterprise-only signature verification, no bandwidth metering. The request inspector is built in.
Related workflows
- Expose your Next.js dev server to GitHub for GitHub webhooks
- Expose your Django dev server to GitHub for GitHub webhooks
- Expose your Rails dev server to GitHub for GitHub webhooks
- Expose your Laravel dev server to Stripe for Stripe webhooks
- Expose your Laravel dev server to the OAuth provider for OAuth callback