【发布时间】:2015-02-19 01:45:31
【问题描述】:
以下是unity webgl的apache重写规则
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteRule (.*)Data(.*)\.js $1Compressed$2\.jsgz [L]
RewriteRule (.*)Data(.*)\.data $1Compressed$2\.datagz [L]
RewriteRule (.*)Data(.*)\.mem $1Compressed$2\.memgz [L]
RewriteRule (.*)Data(.*)\.unity3d $1Compressed$2\.unity3dgz [L]
AddEncoding gzip .jsgz
AddEncoding gzip .datagz
AddEncoding gzip .memgz
AddEncoding gzip .unity3dgz
目前在 nginx 上我有以下内容
location ~* \.(js|data|mem|unity3d)$
{
gzip_static on;
if ($request_filename ~ "\.jsgz$" ) {
rewrite ^(.js.gz)$ /$1.jsgz;
}
if ($request_filename ~ "\.datagz$" ) {
rewrite ^(.data.gz)$ /$1.datagz;
}
if ($request_filename ~ "\.memgz$" ) {
rewrite ^(.mem.gz)$ /$1.memgz;
}
if ($request_filename ~ "\.unity3dgz$" ) {
rewrite ^(.unity3d.gz)$ /$1.unity3dgz;
}
}
location ~* \.(jsgz|datagz|memgz|unity3dgz)$ {
add_header Content-Encoding gzip;
break;
}
但是不行,根据我对原apache重写的理解,假设自动将js|data|mem|unity3d压缩成gunzip格式,并在文件名末尾加上“gz”名称,如何重写在 nginx 中,而 gzip_static 不支持自定义文件名?
【问题讨论】: