Relatude Help

The default

app.MapRelatudeCMS() is all it takes. For a request that no other route answers, it asks the URL manager once what the URL addresses, and answers by what it finds:

GET /products/bikes/trail-one
       │
       ▼
  the URL manager: what does this URL address?
       │
       ├── a page ──────────────────────►  rendered; a page nothing renders falls through
       ├── a stored file ───────────────►  sent, with range requests and caching
       ├── a page or file the visitor ──►  a login redirect, or 403 once signed in
       │   may not read
       └── nothing ─────────────────────►  the request goes on: other routes, MapFallback, or a 404

Part IV covers how a page is rendered, and Stored files how a file is sent.

With the article from chapter 6:

GET /hello-world                  Views/Shared/Article.cshtml, with the article as its model
GET /assets/{token}/photo.jpg     the photo
GET /no-such-page                 MapFallback, or a 404

Content is read as the visitor: anonymous, or the signed-in user (chapter 2). An unpublished page is answered as if it did not exist. For a page or file the visitor may not read, an anonymous visitor is sent to the login page and a signed-in one gets 403. With LoginRedirect off, or on a site without sign-in, it is answered as if it did not exist.