Update links

This commit is contained in:
Raven Scott
2026-03-22 04:12:54 -04:00
parent b2bf2badd8
commit 9b9cc58d7d
@@ -92,7 +92,7 @@ Open **MageSail → Holesail Tunnel → Manage Tunnel**.
* **Website:** hostname and local port, start the tunnel, copy the **`hs://`** key. In **[Holesail Browser](https://git.ssh.surf/snxraven/holesail-browser)**, add a **Virtual Host** for that key. * **Website:** hostname and local port, start the tunnel, copy the **`hs://`** key. In **[Holesail Browser](https://git.ssh.surf/snxraven/holesail-browser)**, add a **Virtual Host** for that key.
* **Service:** choose a backend from **`env.php`**, copy the **`hs://`** key. In the Browser, add a **Service Tunnel** so traffic lands on a **local TCP port** for your tools. * **Service:** choose a backend from **`env.php`**, copy the **`hs://`** key. In the Browser, add a **Service Tunnel** so traffic lands on a **local TCP port** for your tools.
Full detail and edge cases: [docs/installation.md](https://git.ssh.surf/snxraven/MageSail/raw/branch/main/docs/installation.md), [README.md](https://git.ssh.surf/snxraven/MageSail/raw/branch/main/README.md). Full detail and edge cases: [docs/installation.md](https://git.ssh.surf/snxraven/MageSail/src/branch/main/docs/installation.md), [README.md](https://git.ssh.surf/snxraven/MageSail/src/branch/main/README.md).
## How it works under the hood ## How it works under the hood
@@ -125,7 +125,7 @@ flowchart LR
For **website** tunnels the core question is which **store view** applies. **`TunnelRequestDetector`** considers, in order: the **`magesail_store`** query parameter, the **`X-MageSail-Store-Code`** header (and the matching CGI style server variable), a parse of the query string from the raw URI if needed, then hostname matching against tunnel base URLs in **`TunnelRegistry`**. Codes are validated with **`StoreRepository`** so stale **NGINX** map values or bookmarks do not take the site down. For **website** tunnels the core question is which **store view** applies. **`TunnelRequestDetector`** considers, in order: the **`magesail_store`** query parameter, the **`X-MageSail-Store-Code`** header (and the matching CGI style server variable), a parse of the query string from the raw URI if needed, then hostname matching against tunnel base URLs in **`TunnelRegistry`**. Codes are validated with **`StoreRepository`** so stale **NGINX** map values or bookmarks do not take the site down.
**`StoreFromMageSailHeaderPlugin`** feeds **`MAGE_RUN_CODE`** and **`MAGE_RUN_TYPE`** from that result on the storefront. On **admin** routes it intentionally clears tunnel scope so the backend does not stay stuck in a tunnel **store view** and 404. The rest of the story is redirect suppression and link base URL rewriting so HTML stays on the tunnel host. The full plugin list and sort orders are documented in [docs/request-routing-and-plugins.md](https://git.ssh.surf/snxraven/MageSail/raw/branch/main/docs/request-routing-and-plugins.md); redirect behavior is explained in [Magesail/doc/TUNNEL_BASE_URL_REDIRECT.md](https://git.ssh.surf/snxraven/MageSail/raw/branch/main/Magesail/doc/TUNNEL_BASE_URL_REDIRECT.md). **`StoreFromMageSailHeaderPlugin`** feeds **`MAGE_RUN_CODE`** and **`MAGE_RUN_TYPE`** from that result on the storefront. On **admin** routes it intentionally clears tunnel scope so the backend does not stay stuck in a tunnel **store view** and 404. The rest of the story is redirect suppression and link base URL rewriting so HTML stays on the tunnel host. The full plugin list and sort orders are documented in [docs/request-routing-and-plugins.md](https://git.ssh.surf/snxraven/MageSail/src/branch/main/docs/request-routing-and-plugins.md); redirect behavior is explained in [Magesail/doc/TUNNEL_BASE_URL_REDIRECT.md](https://git.ssh.surf/snxraven/MageSail/src/branch/main/Magesail/doc/TUNNEL_BASE_URL_REDIRECT.md).
## Recommended client: Holesail Browser ## Recommended client: Holesail Browser
@@ -137,13 +137,13 @@ For **website** tunnels the core question is which **store view** applies. **`Tu
**Server Tunnels** in Holesail Browser are the opposite direction (they publish a **local** port as an **`hs://`** key). That is not how you consume a MageSail **Service** tunnel; use **Service Tunnel** there with the key from Admin. **Server Tunnels** in Holesail Browser are the opposite direction (they publish a **local** port as an **`hs://`** key). That is not how you consume a MageSail **Service** tunnel; use **Service Tunnel** there with the key from Admin.
Docs: [README](https://git.ssh.surf/snxraven/holesail-browser/raw/branch/main/README.md), [TUNNELING](https://git.ssh.surf/snxraven/holesail-browser/src/branch/main/docs/TUNNELING.md), [VIRTUAL-HOSTS](https://git.ssh.surf/snxraven/holesail-browser/src/branch/main/docs/VIRTUAL-HOSTS.md), [ARCHITECTURE](https://git.ssh.surf/snxraven/holesail-browser/src/branch/main/docs/ARCHITECTURE.md). Docs: [README](https://git.ssh.surf/snxraven/holesail-browser/src/branch/main/README.md), [TUNNELING](https://git.ssh.surf/snxraven/holesail-browser/src/branch/main/docs/TUNNELING.md), [VIRTUAL-HOSTS](https://git.ssh.surf/snxraven/holesail-browser/src/branch/main/docs/VIRTUAL-HOSTS.md), [ARCHITECTURE](https://git.ssh.surf/snxraven/holesail-browser/src/branch/main/docs/ARCHITECTURE.md).
For more on native messaging and browsers, see [Native Messaging: Finally Bringing P2P to the Modern Browser](https://git.ssh.surf/snxraven/ravenscott-blog/src/branch/main/markdown/Native%20Messaging:%20Finally%20Bringing%20P2P%20to%20the%20Modern%20Browser.md). For more on native messaging and browsers, see [Native Messaging: Finally Bringing P2P to the Modern Browser](https://git.ssh.surf/snxraven/ravenscott-blog/src/branch/main/markdown/Native%20Messaging:%20Finally%20Bringing%20P2P%20to%20the%20Modern%20Browser.md).
## Further reading ## Further reading
* [docs/README.md](https://git.ssh.surf/snxraven/MageSail/raw/branch/main/docs/README.md): documentation index * [docs/README.md](https://git.ssh.surf/snxraven/MageSail/src/branch/main/docs/README.md): documentation index
* [docs/overview.md](https://git.ssh.surf/snxraven/MageSail/raw/branch/main/docs/overview.md): component overview * [docs/overview.md](https://git.ssh.surf/snxraven/MageSail/src/branch/main/docs/overview.md): component overview
* [docs/nginx-global-map.md](https://git.ssh.surf/snxraven/MageSail/raw/branch/main/docs/nginx-global-map.md): map file workflow * [docs/nginx-global-map.md](https://git.ssh.surf/snxraven/MageSail/src/branch/main/docs/nginx-global-map.md): map file workflow
* [LICENSE](https://git.ssh.surf/snxraven/MageSail/raw/branch/main/LICENSE): **GPL 3.0 or later** * [LICENSE](https://git.ssh.surf/snxraven/MageSail/src/branch/main/LICENSE): **GPL 3.0 or later**