multi_static_website/server.js
2025-12-10 15:29:22 +01:00

38 lines
922 B
JavaScript

import express from "express";
import dotenv from "dotenv";
dotenv.config();
const app = express();
// Leggi variabili da .env
const HOST = process.env.HOST || "0.0.0.0";
const PORT = process.env.PORT || 3000;
const TYPE = process.env.TYPE || "http";
const URL = `${TYPE}://${HOST}:${PORT}` || "http:/0.0.0.0:3000";
//console.log(URL);
const SITES = (process.env.SITES || "").split(",");
// Monta le cartelle statiche in base alla lista SITES
SITES.forEach(site => {
if (site) {
app.use(`/${site}`, express.static(site));
}
});
// Cartella public come root
app.use("/", express.static("public"));
app.use("/root", express.static("public"));
// Endpoint per esporre la config al client
app.get("/config.json", (req, res) => {
res.json({
host: HOST,
port: PORT,
sites: SITES,
url: URL
});
});
app.listen(PORT, HOST, () => {
console.log(`✅ Server pronto su http://${HOST}:${PORT}`);
});