PWA Error: Failed to register a ServiceWorker
-
I am having some issues upgrading my PWA app from .15 to .16
I got a little frustrated thinking it may be something with my app itself, so I created a brand new PWA app from the new CLI and still have issues with the service worker path.
The app works fine, but the service worker never gets registered/updated
Basically here is my error,
Error during service worker registration: TypeError: Failed to register a ServiceWorker: A bad HTTP response code (404) was received when fetching the script.
my app is upload to a subdirectory on my domain, so the service worker is located there.
https//mydomain.com/myapp/service-worker.js
but the fresh PWA is trying to register a service worker located at the root & not the subdirectory
https://mydomain.com/service-worker.js
is this a bug? or am I missing a configuration option for the new PWA/workbox?
before I was using the build -> publicPath to control where all the files should be, but it seems like publicPath should be empty now.
-
Hi,
Don’t use subdirectories to deploy your PWA, even if you set your publicPath correctly.
-
This post is deleted! -
@rstoenescu What if I have a bunch of other things on the server? Including other PWAs? The PWA app needs a place of its own so it can play nice with others.
create a separate sub-domain?
different names for the various service workers?
other?This did work in .15
-
I would recommend using sub-domains.
-
@rstoenescu I just ran in the same issue. Due to the domain being outside of my control, I can’t easily create subdomains. I use a reverse proxy with subdomains which works great with the4 SPA, but now I want to experiment with a PWA (hosted from a subdirectory). Is this something fundamentally impossible or just not implemented in the quasar template? According to @daveline this was possible in 0.15, what would it take to re-enable this functionality?