You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CapRover Nginx配置问题:无法加载.mjs模块文件

解决CapRover托管Storybook时.mjs文件MIME类型错误问题

问题核心是Nginx默认的mime.types文件可能未包含.mjs对应的正确MIME类型,即使你已经添加了include /etc/nginx/mime.types,也需要手动补充这个类型的映射。

直接修改你的CapRover应用自定义Nginx配置,按以下方式调整:

server {
    # 保留你原有配置里的其他内容,比如监听端口、反向代理(如果有的话)等

    # 先引入默认MIME类型列表
    include /etc/nginx/mime.types;

    # 手动添加.mjs文件的MIME类型映射
    types {
        text/javascript mjs;
    }

    # 静态文件托管的核心配置(对应Storybook的构建产物目录)
    location / {
        root /usr/share/nginx/html; # 这里路径要匹配你Storybook构建文件存放的位置
        try_files $uri $uri/ /index.html;
    }

    # 其他原有配置...
}

为什么这样做?

有些版本的Nginx默认mime.types里没有.mjs的条目,浏览器会把application/octet-stream类型的文件当作普通二进制文件,无法识别为ES模块脚本。手动添加text/javascript的映射后,浏览器就能正确解析.mjs文件了。

额外注意事项

  • 确保include /etc/nginx/mime.types在你自定义的types块之前,这样默认类型和自定义类型会合并生效。
  • 修改配置后,重启CapRover应用或者Nginx服务,让新配置生效。

内容的提问来源于stack exchange,提问作者Nikita Aplin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 02:17:06