Nginx别名css,仅限js

Nginx别名css,仅限js,nginx,Nginx,我想别名所有的js,css缓存静态,但不工作。你知道怎么做吗 location ~* ^/(.*)/[^/].+.(css|js)$ { error_log /var/log/nginx/CssJs-log; alias /home/static/$1.$2; expires 30d; add_header X_Cached 1; error_page 403 404 502 504 = @SHtomcat; } 具有正则表达式位置的别名必须使用

我想别名所有的js,css缓存静态,但不工作。你知道怎么做吗

    location ~* ^/(.*)/[^/].+.(css|js)$ {
    error_log /var/log/nginx/CssJs-log;
    alias /home/static/$1.$2;
    expires 30d;
    add_header X_Cached 1;
    error_page 403 404 502 504 = @SHtomcat;
}

具有正则表达式位置的别名必须使用捕获组来指定在文件系统上提供ressource的位置

因此,这里基本上是试图将URI
/foo/file.extension
解析为物理路径
/home/static/foo.extension
,这似乎不正确

我认为您需要将其解析为
/home/static/file.extension
,因此请使用以下命令:

location ~* ^/.*/([^/].+.(css|js))$ {
    error_log /var/log/nginx/CssJs-log;
    alias /home/static/$1;
    expires 30d;
    add_header X_Cached 1;
    error_page 403 404 502 504 = @SHtomcat;
}