Deploying a PWA on shared hosting

Not every project gets a Vercel budget. Standard PHP shared hosting still works for PWAs in 2026.

Deploying a PWA on shared hosting

You don't need Vercel or Netlify for a PWA. Standard shared hosting (cPanel, Plesk, FTP) still works fine in 2026, with some configuration.

Deploying a PWA on shared hosting
What needs to be configured on shared hosting for a real PWA.

What needs to be set:

  • HTTPS. Service Worker requires it. Let's Encrypt is free.
  • MIME types. .webmanifest as application/manifest+json. .woff2 as font/woff2. Set in .htaccess or hosting panel.
  • Cache headers. Static assets get year-long cache. HTML and manifest get short cache (so updates propagate).
  • Service Worker scope. SW must live at root. Otherwise scope is restricted to its subdirectory.
  • Manifest. webmanifest with name, icons, theme_color. Both that and apple-touch-icon for iOS support.

What's harder on shared hosting:

  • Push notifications via VAPID — needs server-side. PHP works fine for sending pushes.
  • Background sync — most shared hosts limit background tasks. Limited but possible.
  • HTTP/2 — many shared hosts have it now, but not all.
  • Edge caching — usually need to add Cloudflare or similar in front.

Real example: a PWA catalog of 5,000 daily users running on $4/month shared hosting works fine. Vercel-style platforms are convenient, not mandatory.