Unity WebGL 구축을 Firefox68.0 이상 버전에서 로컬로 실행하는 방법

3330 단어 Unity

※ 추적

Build & Run 그러면 Unity는 자동으로 로컬 서버를 만들어 실행합니다.구축할 때마다 서로 다른 포트 번호가 할당되어 있는지 확인하십시오.

입문


Unity에서 WebGL로 구축된 파일을 로컬로 실행하려고 하면 이러한 메시지가 표시됩니다.
It seems your browser does not support running Unity WebGL content from file://urls. Please upload it to an http server, or try a different browser.
"이 브라우저는 로컬 파일의 WebGL 실행을 지원하지 않으므로 서버에 업로드하거나 다른 브라우저를 시도하십시오."라고 적혀 있습니다.
예전에는 Firefox에서 실행했지만 Firefox68.0 이후에 변경이 있어서 설정이 필요해서 소개하고 싶어요.

환경

  • macOS 10.14.6
  • Firefox69.0.3(64비트)
  • TL;DR


    ※ 안전에 대한 설정이니 스스로 책임지세요.
  • Firefox를 열고 URL 막대에 입력about:config
  • 검색 표시줄에 입력file_unique_origin
  • 두 번 클릭하면 false

  • 무슨 설정?


    안전에 관한 설정이라고 합니다.
    CVE-2019-11730: Same-origin policy treats all files in a directory as having the same-origin
    A vulnerability exists where if a user opens a locally saved HTML file, this file can use file: URIs to access other files in the same directory or sub-directories if the names are known or guessed. The Fetch API can then be used to read the contents of any files stored in these directories and they may uploaded to a server. Luigi Gubello demonstrated that in combination with a popular Android messaging app, if a malicious HTML attachment is sent to a user and they opened that attachment in Firefox, due to that app's predictable pattern for locally-saved file names, it is possible to read attachments the victim received from other correspondents.
    https://www.mozilla.org/en-US/security/advisories/mfsa2019-21/#CVE-2019-11730
    웹에 대해 잘 모르지만 같은 디렉터리나 하위 디렉터리에 접근할 수 있다면 무의식중에 데이터를 업로드할 수 있기 때문에 기본적으로 접근할 수 없는 변경인 것 같습니다.

    기타: 로컬 서버 구축 방법


    Mac에서 터미널에서 다음 명령을 누르면 실행할 수 있습니다.
    # WebGLビルドで生成されたindex.htmlがあるディレクトリに移動します。
    $ cd move/to/path
    
    # python3がインストールされていない場合は実行(Homebrewが必要)
    $ brew install python3
    
    # サーバー実行
    $ python3 -m http.server 8000
    
    # ローカルホストの指定ポートにアクセスすれば実行することが出来ます。
    # http://localhost:8000/
    

    참고 자료

  • Edge를 제외한 모든 브라우저에서 로컬 Unity WebGL(file://url)을 실행할 수 없습니다! -단원 포럼
  • Issues with latest Firefox 68.0 - previewing sites locally - Mobirise Forums
  • Unity WebGL에서 구축된 내용을 재생할 수 없음 - Qiita
  • 좋은 웹페이지 즐겨찾기