Nginx FastCGI用于jpg + gif + png缓存

时间:2016-03-14 22:07:53

标签: php caching nginx fastcgi

看看如何在 php 应用程序中使用nginx-fastCGI进行缓存,我看到以下内容

location ~ ^(.+\.php)(.*)$ {
    fastcgi_split_path_info       ^(.+\.php)(.*)$;
    fastcgi_param SCRIPT_FILENAME /path/to/php$fastcgi_script_name;
    fastcgi_param PATH_INFO       $fastcgi_path_info;
}

如果这是一个python应用程序,生活会简单得多,但我并不总是选择我的工作。我想将上面的缓存限制为只有 static 资产,例如.jpg等。人

在python / django世界中,我可以像

那样
location /static/$ {
    fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
    fastcgi_param PATH_INFO       $fastcgi_path_info;
}

认为我能做的是

location ~ ^(*.jpg|*.png|*.gif)$ {
    fastcgi_param SCRIPT_FILENAME /path/to/php$fastcgi_script_name;
    fastcgi_param PATH_INFO       $fastcgi_path_info;
}

还有一件事需要提及。静态文件不在单个static目录中,而是与其他目录混合在一起。这就是问题。

那会有用吗?任何人都有这样做的好方法吗?

1 个答案:

答案 0 :(得分:0)

为静态文件创建一个单独的位置块:

location ~ ^/(static/) {
    root /path/to/the/static/dir;
    expires max;
}