Unity WebGL项目打包后本地打开报错问题解决方法

在Unity打包WebGL项目后,本地打开html页面出现错误提示。

Failed to download file Build/Unity Web.data.gz. Loading web pages via a file:// URL without a web server is not supported by this browser.

在这里插入图片描述

在网上试了好几种方法,综合起来终于跑起来了。以下是解决步骤:

1. 打开Web服务,打开控制面板-->程序-->启用或关闭功能-->Internet Infomation Services,全部打勾,确认即可

2. 网站配置,点击此电脑,点击右键-->管理-->服务和应用程序-->Internet Infomation Services--网站

 

3. 新建一个网站:

        首先将打包出来的WebGL项目放置到对应路径(比如:E:\WebGlTest\TestWebGL_LaoZhaSheBei)

        接着点击网站-->新建一个网站

 

 

在项目所在的文件夹中添加Web.config配置文件

web.config :

<?xml version="1.0" encoding="utf-8"?>
<!--
  有关如何配置 ASP.NET 应用程序的详细信息,请访问
  https://go.microsoft.com/fwlink/?LinkId=169433
-->
<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>

最后在网页上输入:127.0.0.1:8080查看效果即可 ,此时可能遇到提示权限不足无法打开配置文件的问题

 右击文件夹->属性->安全,点击编辑,添加 Everyone用户 赋予它所有权限

 最后重新刷新网页就可以打开生成的WebGL项目啦

参考链接:

关于Unity发布的WebGL项目出现问题的解决方法和本地网站部署_unitylinker.exe did not run properly!_牛奶咖啡13的博客-CSDN博客

unity webgl网页发布到IIS时web.config配置_unity 没有webgl.config_洛神同学的博客-CSDN博客

IIS由于出现权限不足而无法读取配置文件解决方案_由于权限不足而无法读取配置文件_香煎三文鱼的博客-CSDN博客

猜你喜欢

转载自blog.csdn.net/qq_32803337/article/details/131240516