A solution not mentioned here is to use Cloudfront Functions to rewrite the request URI to `index.html` on *viewer request*:

```js
function handler(event) {
    var request = event.request;
    request.uri = 'index.html';
    return request;
}
```