|
|
|
@@ -3,8 +3,8 @@ |
|
|
|
## Request flow |
|
|
|
|
|
|
|
``` |
|
|
|
GET /hello |
|
|
|
-> IIS URL Rewrite rule "WscMvc-Hello" (^hello/?$) |
|
|
|
GET / or GET /hello |
|
|
|
-> IIS URL Rewrite rule "WscMvc-Root" (^$) or "WscMvc-Hello" (^hello/?$) |
|
|
|
-> /Default.asp?route=/hello |
|
|
|
-> Server.CreateObject("WscMvc.RequestContext"); ctx.Initialize path, httpMethod, logDir |
|
|
|
-> Server.CreateObject("WscMvc.Application") |
|
|
|
@@ -31,7 +31,7 @@ GET /hello |
|
|
|
|
|
|
|
## Test harness: GET /self-test — its own app, only Framework/ is shared |
|
|
|
|
|
|
|
`test-app/Controllers/SelfTestController.wsc` (`WscMvc.SelfTestController`) exposes the same checks as `tests/Test-Components.vbs`, but callable over plain HTTP and returning JSON — no PowerShell, cscript, or SSH access to the VM required. `Application.Run` routes `path = "/self-test"` to it. |
|
|
|
`test-app/Controllers/SelfTestController.wsc` (`WscMvc.SelfTestController`) exposes framework checks over plain HTTP and returns JSON — no PowerShell, cscript, or SSH access to the VM required. Both the test site's root (`GET /`) and `GET /self-test` rewrite to the test app's `/self-test` route. Production similarly maps both `GET /` and `GET /hello` to `/hello`. |
|
|
|
|
|
|
|
**This lives on its own IIS site (`test-app/`), not the production site.** Changed 2026-09-19 at Daniel's explicit direction: a diagnostics endpoint permanently reachable on the same site/port as real traffic was the wrong shape. `test-app/public/` is a second, separate IIS site's physical path (own site name, own app pool, own port, own `logs/`), whose `web.config` routes `/self-test` and nothing else. The production site's `web.config` no longer has a `/self-test` rewrite rule at all — `GET /self-test` against the production site now returns a plain `404` (nothing rewrites that path to `Default.asp`). |
|
|
|
|
|
|
|
|