unity打包的WebGL部署到IIS问题

部署之后会出错,我遇到的有以下几种;

进度条卡住不动

明明已经部署到了IIS上,为什么浏览网页的时候还是过不去或者直接报错。

进度条卡住不动的问题其实就是wasm和data的错误。

此时在浏览器上按F12进入开发者模式查看错误(下图是一个没错误的图,错误都被我解决了找不到报错的图了)

如果是wasm的错误和data的错误则直接去IIS的网站里找到MIME打开:

然后在里面添加内容为.wasm,下面那行填application/wasm

注意前一行是有一个点的,后面的wasm前没有点。如下图

data文件的报错也是如法炮制。之后再启动就会解决这个问题了。


关于webconfig文件

我使用2020版本发布WEBGL后根本不用web.config这个文件,只要部署到IIS里就可以看了,当然上面一步MIME的添加是需要的,若是没有MIME的添加即使有web.config这个文件也是无法成功预览的。

但是2022版本发布的同样的网页就必须要用到web.config文件了。web.config放到与index.html同级目录就可以了,目录如下图:

web.config配置文件完整内容如下:

cs 复制代码
<?xml version="1.0" encoding="utf-8"?>
<configuration>  
  <system.webServer>
    <httpProtocol>
      <!-- 允许跨域配置 -->
      <customHeaders>
        <add name="Access-Control-Allow-Origin" value="*" />
        <add name="Access-Control-Allow-Headers" value="X-Requested-With,Content-Type,Authorization" />
        <add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE,OPTIONS" />
        <add name="Access-Control-Allow-Credentials" value="true" />
      </customHeaders>
    </httpProtocol>
        <staticContent>
            <remove fileExtension=".mem" />  
            <remove fileExtension=".data" />  
            <remove fileExtension=".unity3d" />  
            <remove fileExtension=".jsbr" />  
            <remove fileExtension=".membr" />  
            <remove fileExtension=".databr" />  
            <remove fileExtension=".unity3dbr" />  
            <remove fileExtension=".jsgz" />  
            <remove fileExtension=".memgz" />  
            <remove fileExtension=".datagz" />  
            <remove fileExtension=".unity3dgz" />  
            <remove fileExtension=".json" />  
            <remove fileExtension=".unityweb" />  
           
            <mimeMap fileExtension=".mem" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".data" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".unity3d" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".jsbr" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".membr" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".databr" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".unity3dbr" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".jsgz" mimeType="application/x-javascript; charset=UTF-8" />  
            <mimeMap fileExtension=".memgz" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".datagz" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".unity3dgz" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".json" mimeType="application/json; charset=UTF-8" />  
            <mimeMap fileExtension=".unityweb" mimeType="application/octet-stream" />  
        </staticContent>
  </system.webServer>
</configuration>

当然2022版本发布后IIS里的MIME也是一样要添加的。


可以选择其他服务部署

有个超级简单的方式预览就是不用IIS,用Tomcat就不会有这些问题了,还有个更简单的方式就是去VScode里下载一个插件:live server。把网站放进来,就可以直接预览了,超级好用。

相关推荐
前端老爷更车2 天前
从 `renderer.render()` 到地面上的阴影:Three.js 阴影渲染全流程源码解析
webgl
Highcharts.js4 天前
Highcharts 渲染方式解析:SVG 默认渲染与 Boost 模块的 WebGL 加速,以及它与其他可视化库的不同
svg·webgl·可视化·canvas·highcharts·渲染方式
UWA7 天前
GPM 2.0 WebGL 监测能力扩容|覆盖 Unity/Cocos/LayaAir 多引擎微信 & 抖音小游戏
unity·微信·性能优化·小游戏·webgl
像我这样帅的人丶你还8 天前
🚀苹果的液态玻璃咋做?🚀
前端·webgl·three.js
用户83134859306988 天前
Cesium实现动态流动火烧云晚霞效果(可用slider调整火烧云浓度)
vue.js·webgl·cesium
IT爱学堂9 天前
Three.js可视化企业实战WEBGL课,2023年全新WEB 3D THREEJS技术
前端·javascript·webgl
智商偏低10 天前
attribute 与 uniform 本质区别(WebGL)
webgl
进哥AI研习社10 天前
WebGL 与视频背景——首屏视觉层的性能博弈
性能优化·webgl·gpu·canvas·shader·帧率·视频背景
IT小白杨17 天前
链上任务与海外社媒多账号:环境隔离工具技术横评
经验分享·webgl·chrome devtools·安全架构·指纹浏览器
AI_AGENT_DEV_AI23 天前
数字孪生项目的开发
webgl