elide dev y elide serve sirven un directorio de archivos o ejecutan un script de servidor.
elide dev ./public
elide serve ./dist| Comando | Dirección predeterminada | Recarga al cambiar un archivo |
|---|---|---|
elide dev | 127.0.0.1:3000 | Páginas HTML, al servir un directorio |
elide serve | 127.0.0.1:8080 | No |
Un directorio inicia un servidor de archivos; un script se ejecuta como programa y no se recarga.
~/demo elide dev site --no-tui --port 43765 &
Dev server for directory: "site"
Dev server: site at http://127.0.0.1:43765
~/demo curl -s http://127.0.0.1:43765 | head -2
GET / 200 (164us)
<!doctype html>
<h1>Hello, Ada!</h1>
~/demo sed -i.bak 's/Ada/Grace/' site/index.html
[watch] Create /home/demo/demo/site/sedsHkWQG
~/demo curl -s http://127.0.0.1:43765 | head -2
GET / 200 (112us)
<!doctype html>
<h1>Hello, Grace!</h1>
| Opción | Efecto |
|---|---|
--host HOST | Host en el que escuchar. |
--port PORT | Puerto en el que escuchar. |
--no-tui | Salida de registro simple en lugar de la TUI. |
--no-watch | Solo dev: sin vigilancia de archivos ni recarga. |
--contexts=N | Ejecuta N copias de la aplicación; auto las calcula a partir de los núcleos de la CPU. Solo en Linux. |
Servir un directorio
| Petición | Respuesta |
|---|---|
/, /docs, /docs/ | El index.html del directorio |
Un directorio sin index.html | 404; no hay listados de directorios |
/about cuando solo existe about.html | 404; enlace a about.html |
Un archivo oculto como /.env | 404. /.well-known/ sí se sirve. |
Un enlace simbólico que apunta fuera del directorio, o .. en la ruta | 404 |
POST y otros métodos | 405 desde elide serve; elide dev responde como a GET |
Content-Typese deduce de la extensión del archivo:text/html; charset=utf-8,text/css,text/javascript,application/json,application/wasm,image/png, etc.- Los archivos se envían completos, sin comprimir y sin
ETag,Last-ModifiedniCache-Control; las peticionesRangey condicionales reciben un200completo. Ponga delante una CDN o un proxy inverso para la caché y la compresión. elide devañade un script de recarga a cada página HTML y la recarga cuando cambia cualquier archivo del directorio.
Ejecutar un manejador fetch
// entrypoint.mjs
export default {
async fetch(request) {
return new Response("ok");
},
};elide serve entrypoint.mjselide run entrypoint.mjs también sirve, en el hostname y el port exportados o en 127.0.0.1:8080.
Elide.serve({ port: 3005, fetch }) usa su propia dirección con cualquier comando.
Servir con varios contextos
elide serve --contexts=4 entrypoint.mjs- Cada contexto ejecuta el módulo de entrada una vez y mantiene sus propias variables globales, así que un contador de peticiones cuenta por contexto.
- Una conexión permanece en un mismo contexto durante toda su vida, incluidas las peticiones keep-alive.
- Si un contexto falla, el servidor se detiene.
Defina engine.contexts en elide.pkl para un control más fino; consulte
Contextos del motor.