2025-08-28 11:34:44 +08:00

10 lines
378 B
TypeScript

export const WEBSITE_FILE_DIR =
process.env.WEBSITE_FILE_DIR ||
"/opt/1panel/apps/openresty/openresty/www/sites/";
export function safeJoinSitePath(site: string, ...parts: string[]) {
// 防止路径穿越,仅允许字母数字、点、短横线和下划线
const safe = site.replace(/[^a-zA-Z0-9._-]/g, "");
return [WEBSITE_FILE_DIR, safe, ...parts].join("/");
}