Unity 6.3
0 онлайн 85 гостей 3 в системе
Вход
Разработка платформы Шаг 354 из 387

Настройка конфигурации сервера IIS для веб-компилирования

Настройте файл конфигурации сервера Службы информации Интернета (IIS) на использование сервера IIS с веб-сборками Unity.

Сервер IIS идеально подходит для сред, основанных на Windows, и для использования с продуктами Microsoft.

Дополнительные сведения о IIS и о том, как установить и использовать сервер, см. в документации Microsoft IIS.

Настройка сервера IIS для сжатых веб-сборок без резервного копирования

Чтобы обновить файл конфигурации сервера IIS, чтобы он работал со сжатой веб-сборкой без резервного копирования, выполните следующие действия:

  1. Используйте следующую конфигурацию сервера:

    <?xml version="1.0" encoding="UTF-8"?>
    
    
    <configuration>
    <system.webServer>
      <!--
        Compressed Unity builds without decompression fallback can't be properly hosted on a server which
        has static compression enabled because this might result in the build files being compressed twice.
        The following line disables static server compression.
      -->
      <urlCompression doStaticCompression="false" />
      <!-- To host compressed Unity builds, the correct mimeType should be set for the compressed build files. -->
      <staticContent>
        <!--
          NOTE: IIS will throw an exception if a mimeType is specified multiple times for the same extension.
          To avoid possible conflicts with configurations that are already on the server, you should remove the mimeType for the corresponding extension using the <remove> element,
          before adding mimeType using the <mimeMap> element.
        -->
        <!-- The following lines are required for builds compressed with gzip, which don't include decompression fallback. -->
        <remove fileExtension=".data.gz" />
        <mimeMap fileExtension=".data.gz" mimeType="application/gzip" /><!-- The correct MIME type here would be application/octet-stream, but due to Safari bug https://bugs.webkit.org/show_bug.cgi?id=247421, it's preferable to use MIME Type application/gzip instead. -->
        <remove fileExtension=".wasm.gz" />
        <mimeMap fileExtension=".wasm.gz" mimeType="application/wasm" />
        <remove fileExtension=".js.gz" />
        <mimeMap fileExtension=".js.gz" mimeType="application/javascript" />
        <remove fileExtension=".symbols.json.gz" />
        <mimeMap fileExtension=".symbols.json.gz" mimeType="application/octet-stream" />
        <!-- The following lines are required for builds compressed with Brotli, which don't include decompression fallback. -->
        <remove fileExtension=".data.br" />
        <mimeMap fileExtension=".data.br" mimeType="application/octet-stream" />
        <remove fileExtension=".wasm.br" />
        <mimeMap fileExtension=".wasm.br" mimeType="application/wasm" />
        <remove fileExtension=".js.br" />
        <mimeMap fileExtension=".js.br" mimeType="application/javascript" />
        <remove fileExtension=".symbols.json.br" />
        <mimeMap fileExtension=".symbols.json.br" mimeType="application/octet-stream" />
      </staticContent>
    
      <!--
        Hosting compressed Unity builds without decompression fallback relies on native browser decompression,
        therefore a proper "Content-Encoding" response header should be added for the compressed build files.
        NOTE: IIS will throw an exception if the following section is used without the "URL Rewrite" module installed.
        Download the "URL Rewrite" module from https://www.iis.net/downloads/microsoft/url-rewrite
      -->
      <rewrite>
        <outboundRules>
          <!--
            NOTE: IIS will throw an exception if the same rule name is used multiple times.
            To avoid possible conflicts with configurations that are already on the server, you should remove the mimeType for the corresponding extension using the <remove> element,
          before adding mimeType using the <mimeMap> element.
          -->
          <!-- The following section is required for builds compressed with gzip, which don't include decompression fallback. -->
          <remove name="Append gzip Content-Encoding header" />
          <rule name="Append gzip Content-Encoding header">
            <match serverVariable="RESPONSE_Content-Encoding" pattern=".*" />
            <conditions>
              <add input="{REQUEST_FILENAME}" pattern="\.gz$" />
            </conditions>
            <action type="Rewrite" value="gzip" />
          </rule>
          <!-- The following section is required for builds compressed with Brotli, which don't include decompression fallback. -->
          <remove name="Append brotli Content-Encoding header" />
          <rule name="Append brotli Content-Encoding header">
            <match serverVariable="RESPONSE_Content-Encoding" pattern=".*" />
            <conditions>
              <add input="{REQUEST_FILENAME}" pattern="\.br$" />
            </conditions>
            <action type="Rewrite" value="br" />
          </rule>
        </outboundRules>
      </rewrite>
    </system.webServer>
    </configuration>
    
  2. Загрузите этот файл конфигурации на сервер как <Application Folder>/Build/web.config.

Ваша конфигурация сервера готова для взаимодействия с вашей веб-сборкой.

Примечание: Чтобы разместить сжатые веб-сборки без резервного копирования, необходимо установить на сервере модуль URL Rewrite IIS. В противном случае IIS будет вызывать исключение при использовании этого файла конфигурации. Этот модуль доступен в документации Microsoft по URL Rewrite.

Настройка конфигурации сервера IIS для несжатых веб-сборок

Чтобы обновить файл конфигурации сервера, чтобы он работал с несжатой веб-сборкой, выполните следующие инструкции.

  1. Используйте следующую конфигурацию сервера:

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
    <system.webServer>
      <!--
        IIS does not provide default handlers for .data and .wasm files (and in some cases .json files),
        therefore these files won’t be served unless their mimeType is explicitly specified.
      -->
      <staticContent>
        <!--
          NOTE: IIS will throw an exception if a mimeType is specified multiple times for the same extension.
          To avoid possible conflicts with configurations that are already on the server, you should remove the mimeType for the corresponding extension using the <remove> element,
          before adding mimeType using the <mimeMap> element.
        -->
        <remove fileExtension=".data" />
        <mimeMap fileExtension=".data" mimeType="application/octet-stream" />
        <remove fileExtension=".wasm" />
        <mimeMap fileExtension=".wasm" mimeType="application/wasm" />
        <remove fileExtension=".symbols.json" />
        <mimeMap fileExtension=".symbols.json" mimeType="application/octet-stream" />
      </staticContent>
    </system.webServer>
    </configuration>
    
  2. Загрузите этот файл конфигурации на сервер как <Application Folder>/Build/web.config.

Ваша конфигурация сервера готова для взаимодействия с вашей веб-сборкой.

Дополнительные ресурсы