Unity3d发布webgl后gz文件无法解析在nginx上的解

2023-08-07  本文已影响0人  Nmao

环境


系统版本:Ubuntu 18.04.1 LTS
nginx版本:1.24.0

一、下载nginx安装包


nginx官网:http://nginx.org/en/download.html
选择稳定的nginx版本下载。

Screenshot from 2023-08-08 17-35-21.png

二、安装nginx

将下载的nginx安装包上传至ubuntu系统。
解压nginx-1.22.0.tar.gz包:sudo tar -zxvf ./nginx-1.22.0.tar.gz -C /opt/
安装nginx所需的依赖
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install zlib1g-dev
sudo apt-get install openssl libssl-dev
sudo apt-get install gcc
编译nginx
在nginx根目录执行:./configure
编译:sudo make -j32
安装:sudo make install
测试nginx是否安装成功:/usr/local/nginx/sbin/nginx -v

三、 配置nginx

更改nginx端口号:
编辑nginx.conf文件:sudo vim conf/nginx.conf
将listen的值即为nginx的端口号。
Screenshot from 2023-08-08 17-36-31.png

四、常用nginx命令

启动nginx的命令为:/usr/local/nginx/sbin/nginx
停止nginx的命令为 :/usr/local/nginx/sbin/nginx -s stop
重启nginx的命令为:/usr/local/nginx/sbin/nginx -s reload

报错
发现报==nginx: [error] open() “/usr/local/nginx/logs/nginx.pid” failed (2: No such file or directory)==错误,进到logs文件发现的确没有nginx.pid文件
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

五、unity3d打包webgl版本时不选Decompression Fallback 选项,打出来的包如下图:

image.png

放到服务器后会报错gz文件无法解析,官方只给出了iis和Apache上的配置方案,但我整了半天也没搞出来,后来换成nginx服务器后,在国外发现一篇帖子解决问题,需要在nginx.conf中加入如下配置:

        location ~* \.gz$ {
          add_header Content-Encoding gzip;
 
          location ~* \.data\.gz$ {
              types { }
              default_type application/octet-stream;
          }
          location ~* \.wasm\.gz$ {
              types { }
              default_type application/wasm;
          }
          location ~* \.js\.gz$ {
              types { }
              default_type application/javascript;
          }
          location ~* \.symbols\.json\.gz$ {
              types { }
              default_type application/octet-stream;
          }
        }

重启服务器,解决问题。

上一篇下一篇

猜你喜欢

热点阅读