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

Rust WebAssembly应用部署到Apache服务器后无法运行的问题

问题原因及解决办法

1. 缺少入口HTML文件

你只上传了JS和Wasm构建文件,但浏览器需要一个HTML页面作为入口来加载这些脚本。没有HTML的情况下,Apache会默认展示目录文件列表,不会运行你的Wasm应用。

解决办法:创建index.html文件,放在构建文件的同级目录,内容示例:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Rust Wasm App</title>
</head>
<body>
    <script src="./bootstrap.js"></script>
</body>
</html>

将该HTML文件与构建文件一同上传到Apache服务器的网站根目录。

2. Apache未配置默认索引页

即便你有index.html,如果Apache配置中未将其设为默认索引文件,服务器仍会显示目录列表。

解决办法:

  • 方式一:修改Apache的httpd.conf或站点配置文件,确保DirectoryIndex包含index.html:
    DirectoryIndex index.html index.htm
    
  • 方式二:在网站根目录创建.htaccess文件,添加以下内容:
    DirectoryIndex index.html
    

3. 构建文件路径不匹配

你的Webpack配置输出目录是dist,但上传的是build目录下的文件,这会导致脚本引用路径错误(比如bootstrap.js找不到Wasm文件或index.js)。

解决办法:

  • 确认Webpack构建产物在dist目录,上传时将dist内所有文件(包括自动生成的0.bootstrap.js、Wasm文件)与index.html一同上传到Apache站点根目录。
  • 检查HTML中bootstrap.js的引用路径是否与实际文件位置一致,避免路径错误导致脚本加载失败。

4. Apache未正确配置Wasm的MIME类型

Apache默认未给.wasm文件设置正确的MIME类型,浏览器无法正确解析Wasm文件,会导致应用加载失败。

解决办法:

  • 在httpd.conf或站点配置中添加:
    AddType application/wasm .wasm
    
  • 或在.htaccess中添加:
    AddType application/wasm .wasm
    

内容的提问来源于stack exchange,提问作者Shingai Munyuki

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 17:06:30