nginx cache expire settings issue.Can anyone help?

Maxim Dounin mdounin at
Thu Dec 11 13:57:37 UTC 2014


On Thu, Dec 11, 2014 at 06:32:52AM -0500, anoopov wrote:

> Hi I am new to Nginx. I need to add expire -1 for my JSON files in the below
> urls
> https://siteaddress/foldername /default.htm#/dashboard/ui.json
> location /foldername {
> 	   index  default.html default.htm;
>        proxy_pass         http://siteaddress_eapp_entry;
>     }

In the URL provided "#/dashboard/ui.json" is a fragment, and will 
not be sent to the server.

> I have tried below syntax but still JSON files are caching
> location  \foldername \.(json)$ {
>                     expires -1;
>            }  

This is syntactically incorrect and will cause syntax error due to 
space in it.

If the "#" above is just a typo, then you can use something like 
this to disable caching of *.json files within "/foldername":

    location /foldername {
        proxy_pass ...

        location ~ \.json$ {
            expires epoch;
            proxy_pass ...

Note that:

- the "~" is important as it marks regex location, see for details;

- proxy_pass have to be repeated in the nested location.

More about locations can be found in the documentation, see

Maxim Dounin

More information about the nginx mailing list