Mahesvara —— 文殊系列 Web 服务器
Mahesvara 是文殊系列自研的 Web 服务器,以 PuXian 语言实现、自举编译为静态二进制,零动态依赖。它追求 nginx 一样的使用心智:以配置文件声明多站点虚拟主机,一站搞定静态托管、TLS/SNI、md 多语言站点、.px 脚本路由、进程内缓存、反向代理与细粒度限流,同时把"可观测、可审计、可热更、不中断"做成默认能力。
本站即由 Mahesvara 自身托管 —— 页面由 Markdown 源自动构建,证书到期热加载换新,全程零人工干预,是它最直接的 dogfood。
核心能力
- 多站点虚拟主机:按 Host 声明站点(含通配兜底),同进程多站隔离,deny 目录/扩展名黑名单、SPA fallback 开箱即用
- 生产级 TLS:TLS-SNI 多证书,证书文件变更 60 秒内热加载、零重启零断连换证;站点缺证自动 ACME 签发;HTTP/3(QUIC)可选同端口随启,Alt-Svc 自动通告;SNI 证书槽预检在
--check与启动横幅里直接报容量,避免"多装一张证书整机 443 起不来" - .px 脚本路由:把某个 URL 交给 PuXian 脚本执行,URL 里不出现
.px(PHP 式心智,但不需要 PHP-FPM、不需要反代跳数);四种匹配(exact/prefix/regex/dir)、方法白名单、超时杀进程组、每路由并发上限;编译缓存让第二次请求直接跑编译产物 - md 多语言站点:Markdown 源 + 模板 + i18n 自动构建多语言静态 HTML;LLM 翻译发生在 md 层、带磁盘缓存与 60 秒热更,页面可被 CDN 与搜索引擎正常收录
- 反向代理:prefix 路由反代到上游,上游不可达稳定返回 502 而不拖垮进程;>1 MiB 请求体不再静默丢体
- 进程内 HTTP 缓存:ma-cache 对可缓存响应做进程内缓存(TTL 夹逼 60~300 秒、磁盘对象 LRU 上限、指标入
/__metrics);并带 SWR 提前刷新 —— TTL 消耗至 90% 即后台异步回源续期,命中零回源等待 - 站点级跳转与重定向:
redirect_to_host(同一内容多 Host 归一)与redirects(精确路径 → 目标,GET/HEAD 302/301、其余方法自动升 307/308 保留方法与体) - 限流与防护:per-site 滑动窗口限流(超限 429)、请求级 deny、配置级 src/cache/templates 防泄漏
- 优雅运维:
--check配置 lint、SIGHUP 优雅 reload(坏配置拒绝应用)、来源 IP 访问日志、/__metrics进程指标、--px-probe上线前只编译不执行 - 自举工程:PuXian 语言实现、pxc 自举编译,LLM key 零落盘(环境变量 / AES-256-GCM 加密文件 / 文殊词元缓存 unix socket)
项目定位与边界
Mahesvara 是文殊系列众多软件组件中的 webserver 软件本体,只负责"能跑什么":vhost、TLS、SPA、反代、缓存、脚本路由、日志与 md 站点渲染。由它托管的网站内容(如文殊官网、知识库等)属于独立内容项目,不在本软件仓库内。
它脱胎于一次"要不要用 nginx"的讨论:与其在开源 Web 服务器上做定制,不如基于自研 PuXian 语言构建一个完全可控、可热更、与文殊 LLM 生态原生集成的 Web 服务器,并把生产环境自身作为第一测试场。它的名字取自大自在天 Mahesvara —— 自举、自持、自成一体。
当前状态
- 当前线上版本:0.22.5(2026-11-05 部署,源站与两个边缘节点在跑,十余个生产站点正在托管)
- 工具链基线 PuXian 0.2.373;产物为静态二进制,
file+ldd可验"statically linked" - 功能与版本演进见功能介绍与里程碑
- 现阶段以内部自举与内测为主,暂不提供公开下载与安装包;软件随文殊生态演进,敬请关注本站
谁在用 Mahesvara
以下站点均运行于 Mahesvara,并持续为其提供真实流量与可靠性验证:
- 文殊官网
wsai.chat(含 mta-sts 邮件安全策略托管) - 软件站
soft.wsai.chat/soft.xiusoft.cn - 账号与门户
id.xiusoft.cn、运营中心mc.xiusoft.cn - PuXian 语言站
px.dzty.club(本站的教程站,同为 md + 静态混合模式) - KBS 技术实证知识库
kbs.xiusoft.cn - 境外 hub
hk.hub.xiusoft.cn - 本站
ma.xiusoft.cn
边界与取舍
- 不做 CGI 全家桶:px 脚本路由只提供 CGI/1.1 子集(环境变量 + stdin/stdout),不实现 FastCGI、不做进程常驻池
- 不做负载均衡:上游由外层(DNS 智能解析 / 云 LB)负责,Ma 只做单机反代
- 不做容器编排:一个二进制一个进程,配置即声明
- 能静态就不要动态:md 站点输出为分语言静态 HTML,同一 URL 内容恒定,CDN 可缓存、搜索引擎无 cloaking 风险