패키징 후 Unity WebGL 프로젝트를 로컬에서 열 때 발생하는 오류 해결 방법

Unity가 WebGL 프로젝트를 패키징한 후 HTML 페이지를 로컬에서 열 때 오류 메시지가 나타납니다.

Build/Unity Web.data.gz 파일을 다운로드하지 못했습니다. 웹 서버 없이 file:// URL을 통해 웹 페이지를 로드하는 것은 이 브라우저에서 지원되지 않습니다.

여기에 이미지 설명을 삽입하세요.

 

나는 온라인에서 여러 가지 방법을 시도했고 마침내 성공했습니다. 해결 단계는 다음과 같습니다.

1. 웹 서비스를 열고 제어판-->프로그램-->기능 활성화 또는 끄기-->인터넷 정보 서비스를 열고 모든 상자를 선택한 후 확인합니다.

2. 웹사이트 구성 , 이 컴퓨터를 클릭하고 마우스 오른쪽 버튼 클릭->관리-->서비스 및 응용 프로그램-->인터넷 정보 서비스--웹사이트

 

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 을 입력하여 효과를 확인하세요. 이때 권한이 부족하여 구성 파일을 열 수 없는 문제가 발생할 수 있습니다.

 폴더->속성->보안을 마우스 오른쪽 버튼으로 클릭하고 편집을 클릭한 후 모든 사용자를 추가하고 모든 권한을 부여합니다.

 마지막으로 웹페이지를 새로 고쳐 생성된 WebGL 프로젝트를 엽니다.

 

참조 링크:

유니티에서 출시한 WebGL 프로젝트와 로컬 웹사이트deployment_unitylinker.exe가 제대로 실행되지 않는 문제에 대한 해결방법에 대해!_밀크커피13의 블로그-CSDN 블로그

Unity webgl 웹 페이지가 IIS에 게시되면 web.configconfiguration_unity에 webgl.config_Luo Shen의 블로그-CSDN 블로그가 없습니다.

권한이 부족하여 IIS가 구성 파일을 읽을 수 없습니다. 해결 방법_권한이 부족하여 구성 파일을 읽을 수 없습니다.Fried Salmon의 블로그-CSDN 블로그

 

추천

출처blog.csdn.net/qq_32803337/article/details/131240516