@atria/server 0.0.6 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -5
- package/dist/server.js +68 -16
- package/dist/server.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
HTTP runtime server for atria development.
|
|
4
4
|
|
|
5
|
-
This package
|
|
5
|
+
This package powers `atria dev` by serving `public/` for the public site and `.atria/runtime` for the back-office host.
|
|
6
6
|
|
|
7
7
|
## Install
|
|
8
8
|
|
|
@@ -27,7 +27,9 @@ await server.close();
|
|
|
27
27
|
|
|
28
28
|
## Behavior
|
|
29
29
|
|
|
30
|
-
- Serves
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
-
|
|
30
|
+
- Serves `localhost` from `<projectRoot>/public`.
|
|
31
|
+
- Serves `admin.localhost` from `<projectRoot>/.atria/runtime`.
|
|
32
|
+
- Responds to `GET /api/health` with `{ "ok": true, "site": "public" | "admin" }`.
|
|
33
|
+
- Returns `404` for missing public files/pages (serving `public/404.html` when present).
|
|
34
|
+
- Uses SPA-style `index.html` fallback only for `admin.localhost` non-file routes.
|
|
35
|
+
- Blocks path traversal attempts outside the configured public/admin roots.
|
package/dist/server.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { createServer } from "node:http";
|
|
2
2
|
import { promises as fs } from "node:fs";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
import { ATRIA_RUNTIME_DIR } from "@atria/shared";
|
|
5
|
-
const PUBLIC_OUTPUT_DIR = "public";
|
|
4
|
+
import { ATRIA_RUNTIME_DIR, PUBLIC_OUTPUT_DIR } from "@atria/shared";
|
|
6
5
|
const DEV_PUBLIC_HOST = "localhost";
|
|
7
6
|
const DEV_ADMIN_HOST = "admin.localhost";
|
|
8
7
|
const MIME_TYPES = {
|
|
@@ -53,26 +52,69 @@ const resolveSiteTarget = (hostname) => {
|
|
|
53
52
|
}
|
|
54
53
|
return null;
|
|
55
54
|
};
|
|
56
|
-
const
|
|
55
|
+
const resolveRootIndexFile = async (rootDir) => {
|
|
56
|
+
const rootIndexPath = path.join(rootDir, "index.html");
|
|
57
|
+
try {
|
|
58
|
+
const rootIndexStats = await fs.stat(rootIndexPath);
|
|
59
|
+
if (rootIndexStats.isFile()) {
|
|
60
|
+
return { type: "file", filePath: rootIndexPath };
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
// fall through to not found
|
|
65
|
+
}
|
|
66
|
+
return { type: "not-found" };
|
|
67
|
+
};
|
|
68
|
+
const resolveRequestFile = async (rootDir, requestPath, mode) => {
|
|
57
69
|
const normalizedPath = requestPath === "/" ? "index.html" : requestPath.replace(/^\/+/, "");
|
|
58
|
-
const filePath = path.join(
|
|
59
|
-
if (
|
|
60
|
-
return
|
|
70
|
+
const filePath = path.join(rootDir, normalizedPath);
|
|
71
|
+
if (!isInsideDirectory(rootDir, filePath)) {
|
|
72
|
+
return { type: "forbidden" };
|
|
61
73
|
}
|
|
62
74
|
try {
|
|
63
75
|
const fileStats = await fs.stat(filePath);
|
|
64
76
|
if (fileStats.isDirectory()) {
|
|
65
|
-
|
|
77
|
+
const directoryIndexPath = path.join(filePath, "index.html");
|
|
78
|
+
if (!isInsideDirectory(rootDir, directoryIndexPath)) {
|
|
79
|
+
return { type: "forbidden" };
|
|
80
|
+
}
|
|
81
|
+
try {
|
|
82
|
+
const directoryIndexStats = await fs.stat(directoryIndexPath);
|
|
83
|
+
if (directoryIndexStats.isFile()) {
|
|
84
|
+
return { type: "file", filePath: directoryIndexPath };
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
// fall through to not found/fallback response
|
|
89
|
+
}
|
|
90
|
+
return mode === "spa-fallback" ? resolveRootIndexFile(rootDir) : { type: "not-found" };
|
|
66
91
|
}
|
|
67
|
-
|
|
92
|
+
if (fileStats.isFile()) {
|
|
93
|
+
return { type: "file", filePath };
|
|
94
|
+
}
|
|
95
|
+
return { type: "not-found" };
|
|
68
96
|
}
|
|
69
97
|
catch {
|
|
70
|
-
if (path.extname(normalizedPath)) {
|
|
71
|
-
return
|
|
98
|
+
if (mode === "spa-fallback" && !path.extname(normalizedPath)) {
|
|
99
|
+
return resolveRootIndexFile(rootDir);
|
|
72
100
|
}
|
|
73
|
-
return
|
|
101
|
+
return { type: "not-found" };
|
|
74
102
|
}
|
|
75
103
|
};
|
|
104
|
+
const respondWithPublicNotFound = async (response, publicDir) => {
|
|
105
|
+
const notFoundPagePath = path.join(publicDir, "404.html");
|
|
106
|
+
try {
|
|
107
|
+
const notFoundPage = await fs.readFile(notFoundPagePath);
|
|
108
|
+
response.writeHead(404, { "content-type": MIME_TYPES[".html"] });
|
|
109
|
+
response.end(notFoundPage);
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
catch {
|
|
113
|
+
// Fall back to plain text when public/404.html is unavailable.
|
|
114
|
+
}
|
|
115
|
+
response.writeHead(404, { "content-type": MIME_TYPES[".txt"] });
|
|
116
|
+
response.end("Not Found");
|
|
117
|
+
};
|
|
76
118
|
const closeServer = async (server) => new Promise((resolve, reject) => {
|
|
77
119
|
server.close((error) => {
|
|
78
120
|
if (error) {
|
|
@@ -88,7 +130,7 @@ export const startDevServer = async (options) => {
|
|
|
88
130
|
const publicOutputDir = path.join(options.projectRoot, PUBLIC_OUTPUT_DIR);
|
|
89
131
|
await fs.access(runtimeDir);
|
|
90
132
|
const hasPublicOutput = await directoryExists(publicOutputDir);
|
|
91
|
-
const publicDir =
|
|
133
|
+
const publicDir = publicOutputDir;
|
|
92
134
|
const publicFallbackToRuntime = !hasPublicOutput;
|
|
93
135
|
const server = createServer(async (request, response) => {
|
|
94
136
|
try {
|
|
@@ -107,14 +149,24 @@ export const startDevServer = async (options) => {
|
|
|
107
149
|
return;
|
|
108
150
|
}
|
|
109
151
|
const rootDir = siteTarget === "admin" ? runtimeDir : publicDir;
|
|
110
|
-
const
|
|
111
|
-
|
|
152
|
+
const mode = siteTarget === "admin" ? "spa-fallback" : "strict";
|
|
153
|
+
const targetFile = await resolveRequestFile(rootDir, decodeURIComponent(requestUrl.pathname), mode);
|
|
154
|
+
if (targetFile.type === "forbidden") {
|
|
112
155
|
response.writeHead(403, { "content-type": MIME_TYPES[".txt"] });
|
|
113
156
|
response.end("Forbidden");
|
|
114
157
|
return;
|
|
115
158
|
}
|
|
116
|
-
|
|
117
|
-
|
|
159
|
+
if (targetFile.type === "not-found") {
|
|
160
|
+
if (siteTarget === "public") {
|
|
161
|
+
await respondWithPublicNotFound(response, publicDir);
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
response.writeHead(404, { "content-type": MIME_TYPES[".txt"] });
|
|
165
|
+
response.end("Not Found");
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
const fileBuffer = await fs.readFile(targetFile.filePath);
|
|
169
|
+
const extension = path.extname(targetFile.filePath);
|
|
118
170
|
const contentType = MIME_TYPES[extension] ?? "application/octet-stream";
|
|
119
171
|
response.writeHead(200, { "content-type": contentType });
|
|
120
172
|
response.end(fileBuffer);
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atria/server",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.7",
|
|
4
4
|
"description": "HTTP server and runtime delivery for atria",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"atria",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"dist"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@atria/shared": "0.0.
|
|
27
|
+
"@atria/shared": "0.0.7"
|
|
28
28
|
},
|
|
29
29
|
"publishConfig": {
|
|
30
30
|
"access": "public"
|