# 404 Error Page when reloading a dynamic page

**URL:** <https://discourse.elm-lang.org/t/404-error-page-when-reloading-a-dynamic-page/8388>\
**Category:** Learn\
**Created:** [May 10, 2022, 10:45am UTC](https://discourse.elm-lang.org/t/404-error-page-when-reloading-a-dynamic-page/8388 "2022-05-10T10:45:42Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Araveri](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.elm-lang.org/araveri/32/4360_2.png) [@Araveri](https://discourse.elm-lang.org/u/Araveri)\
**Post date:** [May 10, 2022, 10:45am UTC](https://discourse.elm-lang.org/t/404-error-page-when-reloading-a-dynamic-page/8388/1 "2022-05-10T10:45:42Z")

</div>

Hello,

I am currently working on my first project with elm-spa (ryannhg/elm-spa: 6.0.0).

When I refresh my dynamic Page, I get a 404 Error but the route is looking correctly. Now when I open the Page from a Button click from my Homepage, the dynamic Page shows properly.

Can somebody explain me how I can redirect the route to the Page when I am refreshing?

---

<div class="post-metadata">

**Author:** ![Carsten\_Konig](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.elm-lang.org/carsten_konig/32/4063_2.png) [@Carsten\_Konig](https://discourse.elm-lang.org/u/Carsten_Konig)\
**Post date:** [May 10, 2022, 12:04pm UTC](https://discourse.elm-lang.org/t/404-error-page-when-reloading-a-dynamic-page/8388/2 "2022-05-10T12:04:09Z")

</div>

How do you host the app? Is the host catching all the subroutes correctly (basically it should ignore the route and just render/display the elm-app again)

---

<div class="post-metadata">

**Author:** ![Araveri](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.elm-lang.org/araveri/32/4360_2.png) [@Araveri](https://discourse.elm-lang.org/u/Araveri)\
**Post date:** [May 10, 2022, 4:07pm UTC](https://discourse.elm-lang.org/t/404-error-page-when-reloading-a-dynamic-page/8388/3 "2022-05-10T16:07:27Z")

</div>

I am using the app only local right now.

I’ve just created a Homepage like in the elm-spa guide and created a dynamic route “class/(Dynamic)name” which I can reach from my Homepage.

For the Back-End I am using [asp.net](http://asp.net) MVC.

For me it looks like the route is looking correctly. (But I am still pretty unexperienced, so…)

---

<div class="post-metadata">

**Author:** ![Carsten\_Konig](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.elm-lang.org/carsten_konig/32/4063_2.png) [@Carsten\_Konig](https://discourse.elm-lang.org/u/Carsten_Konig)\
**Post date:** [May 10, 2022, 4:15pm UTC](https://discourse.elm-lang.org/t/404-error-page-when-reloading-a-dynamic-page/8388/4 "2022-05-10T16:15:51Z")

</div>

For [ASP.NET](http://ASP.NET) I usually use either ~~~[`MapSpaFallbackRoute`](https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.builder.sparouteextensions.mapspafallbackroute?view=aspnetcore-3.1&viewFallbackFrom=aspnetcore-6.0)~~~ or a `Route`-Attribute with a `{*url}` catch-all on Home-Index.

You can find out if this is the issue by inspecting the source of the page in your browser - I suspect that the 404 is from your backend and that you don’t get any meaningful HTML containing the elm-start-code back.

* * *

Sorry turns out that for newer versions it’s [`MapFallbackToController`](https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.builder.controllerendpointroutebuilderextensions.mapfallbacktocontroller?view=aspnetcore-6.0) - this is an example that works for me:

```auto
app.UseEndpoints(endpoints =>
{
    // default - you can stick with this if you want an error page or some other non-elm related controller/view
    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller=Home}/{action=Index}/{id?}");

    // map everything else to Home/Index (works for routes handled with elm-spa
    endpoints.MapFallbackToController("Index", "Home");
});

```

---

<div class="post-metadata">

**Author:** ![Araveri](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.elm-lang.org/araveri/32/4360_2.png) [@Araveri](https://discourse.elm-lang.org/u/Araveri)\
**Post date:** [May 10, 2022, 4:59pm UTC](https://discourse.elm-lang.org/t/404-error-page-when-reloading-a-dynamic-page/8388/5 "2022-05-10T16:59:58Z")

</div>

The MapFallbackToController works perfectly and your assumption with the empty source was correct aswell.

Thanks for your fast help!

---

<div class="post-metadata">

**Author:** ![system](https://canada1.discourse-cdn.com/flex035/uploads/elm_lang/original/1X/50a05e53677a2c3b47776d7abd0f113eb50193a1.png) [@system](https://discourse.elm-lang.org/u/system)\
**Post date:** [May 20, 2022, 5:00pm UTC](https://discourse.elm-lang.org/t/404-error-page-when-reloading-a-dynamic-page/8388/6 "2022-05-20T17:00:08Z")

</div>

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.
