Unity 6.3
0 онлайн 38 гостей 3 в системе
Вход

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

Настройте файл конфигурации сервера Apache для использования сервера Apache с веб-сборками Unity.

Apache — это кроссплатформенный веб-сервер с открытым исходным кодом, который можно использовать для обслуживания приложений, созданных с помощью Unity Web.

Более подробную информацию об Apache и о том, как установить и использовать его, см. в документации по Apache.

Выберите метод сборки Apache Web

Вы можете настроить веб-сборку в Apache, используя один из двух методов:

  • Виртуальный хост в httpd.conf.

  • Виртуальный хост в .htaccess.

Рекомендуется настроить виртуальный хост в httpd.conf, если у вас есть доступ к этой конфигурации.

Использование виртуального хоста в httpd.conf метод

Чтобы настроить веб-сборки с помощью виртуального хоста в httpd.conf метод, используйте следующий код в конфигурации сервера Apache:

<Directory /var/www/html/root/path/to/your/unity/content/>
<IfModule mod_mime.c>
RemoveType .gz
AddEncoding gzip .gz
# The correct MIME type for .data.gz would be application/octet-stream, but due to Safari bug https://bugs.webkit.org/show_bug.cgi?id=247421, it is preferable to use MIME Type application/gzip instead.
#AddType application/octet-stream .data.gz
AddType application/gzip .data.gz
AddType application/wasm .wasm.gz
AddType application/javascript .js.gz
AddType application/octet-stream .symbols.json.gz

RemoveType .br
AddEncoding br .br
AddType application/octet-stream .data.br
AddType application/wasm .wasm.br
AddType application/javascript .js.br
AddType application/octet-stream .symbols.json.br

# Insert additional code here

</IfModule>
</Directory>

Использование виртуального хоста в .htaccess метод

Если вы не можете изменить httpd.conf, например, из-за отсутствия прав администратора на вашем веб-хостинге, но ваш Apache поддерживает .htaccess, то вы можете настроить .htaccess следующим образом:

# NOTE: "mod_mime" Apache module must be enabled for this configuration to work.
<IfModule mod_mime.c>

# The following lines are required for builds without decompression fallback, compressed with gzip
RemoveType .gz
AddEncoding gzip .gz
AddType application/gzip .data.gz # 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.
AddType application/wasm .wasm.gz
AddType application/javascript .js.gz
AddType application/octet-stream .symbols.json.gz

# The following lines are required for builds without decompression fallback, compressed with Brotli
RemoveType .br
RemoveLanguage .br
AddEncoding br .br
AddType application/octet-stream .data.br
AddType application/wasm .wasm.br
AddType application/javascript .js.br
AddType application/octet-stream .symbols.json.br

# The following line improves loading performance for uncompressed builds
AddType application/wasm .wasm

# Insert additional code here

</IfModule>

Улучшение производительности для gzip-сжатых сборок

Чтобы повысить скорость загрузки веб-сборки, сжатой с помощью gzip, с резервным декомпрессором, добавьте в код следующую строку:

AddEncoding gzip .unityweb

Улучшение производительности для Brotli-сжатых сборок с декомпрессией fallback

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

 AddEncoding br .unityweb

Включить основное многопоточное C/C++

Если вы создали проект с Включить нативную многопоточность C/C++ активированным в Игрок настройки, вам необходимо установить заголовки сервера. Эти заголовки включают в себя Cross-Origin Opener Policy (COOP), Cross-Origin Embedded Policy (COEP) и Cross-Origin Resource Policy (CORP).

Добавьте следующий код в файл конфигурации:

 <FilesMatch "\.(htm|html|js|js.gz|js.br)$">
     Header add Cross-Origin-Opener-Policy "same-origin"
     Header add Cross-Origin-Embedder-Policy "require-corp"
     Header add Cross-Origin-Resource-Policy "cross-origin"
 </FilesMatch>

Разрешить запросы на общий доступ к ресурсам из разных источников (CORS)

Чтобы разрешить запросы CORS, добавьте в конфигурацию следующий код: lang-apacheconf Header add Access-Control-Allow-Origin "*"

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