This can definitely be fixed (it involves making sure the relevant operations in the app manipulate `window.history` and either indicating location state in the browser via the hash portion of the URL or building the server to work hand-in-glove with subpaths), but it requires more work than the default navigation one gets with a multi-page app.
I've seen good frameworks for managing this but I agree that developers tend to forget it.
I've seen good frameworks for managing this but I agree that developers tend to forget it.