Different configuration of uwsg_cache depends on url path











up vote
1
down vote

favorite












I have uwsgi cache configured, but I want to make it work differently for different locations. My config:



uwsgi_cache_path /tmp/nginx_cache/ levels=1:2 keys_zone=mycache:60m inactive=10m;

server {
listen *:80;
server_name thewebsite.loc;


location @uwsgi {
include uwsgi_params;
uwsgi_cache mycache;
uwsgi_cache_valid any 1h;
uwsgi_cache_key $request_uri;
uwsgi_pass unix:///var/run/app/uwsgi.sock;
uwsgi_read_timeout 120s;
}

location / {
try_files $uri @uwsgi;
}
}


let's say, I want to disable cache for a particular location. I add after block for location / another location:



  location /dynamic{
uwsgi_cache off;
try_files $uri @uwsgi;
}


But it doesn't work and the view still cached. Is it possible or not supposed to work like this at all?



UPD: I've also tried to configure cache in location /. In this case, it simply doesn't work.










share|improve this question




























    up vote
    1
    down vote

    favorite












    I have uwsgi cache configured, but I want to make it work differently for different locations. My config:



    uwsgi_cache_path /tmp/nginx_cache/ levels=1:2 keys_zone=mycache:60m inactive=10m;

    server {
    listen *:80;
    server_name thewebsite.loc;


    location @uwsgi {
    include uwsgi_params;
    uwsgi_cache mycache;
    uwsgi_cache_valid any 1h;
    uwsgi_cache_key $request_uri;
    uwsgi_pass unix:///var/run/app/uwsgi.sock;
    uwsgi_read_timeout 120s;
    }

    location / {
    try_files $uri @uwsgi;
    }
    }


    let's say, I want to disable cache for a particular location. I add after block for location / another location:



      location /dynamic{
    uwsgi_cache off;
    try_files $uri @uwsgi;
    }


    But it doesn't work and the view still cached. Is it possible or not supposed to work like this at all?



    UPD: I've also tried to configure cache in location /. In this case, it simply doesn't work.










    share|improve this question


























      up vote
      1
      down vote

      favorite









      up vote
      1
      down vote

      favorite











      I have uwsgi cache configured, but I want to make it work differently for different locations. My config:



      uwsgi_cache_path /tmp/nginx_cache/ levels=1:2 keys_zone=mycache:60m inactive=10m;

      server {
      listen *:80;
      server_name thewebsite.loc;


      location @uwsgi {
      include uwsgi_params;
      uwsgi_cache mycache;
      uwsgi_cache_valid any 1h;
      uwsgi_cache_key $request_uri;
      uwsgi_pass unix:///var/run/app/uwsgi.sock;
      uwsgi_read_timeout 120s;
      }

      location / {
      try_files $uri @uwsgi;
      }
      }


      let's say, I want to disable cache for a particular location. I add after block for location / another location:



        location /dynamic{
      uwsgi_cache off;
      try_files $uri @uwsgi;
      }


      But it doesn't work and the view still cached. Is it possible or not supposed to work like this at all?



      UPD: I've also tried to configure cache in location /. In this case, it simply doesn't work.










      share|improve this question















      I have uwsgi cache configured, but I want to make it work differently for different locations. My config:



      uwsgi_cache_path /tmp/nginx_cache/ levels=1:2 keys_zone=mycache:60m inactive=10m;

      server {
      listen *:80;
      server_name thewebsite.loc;


      location @uwsgi {
      include uwsgi_params;
      uwsgi_cache mycache;
      uwsgi_cache_valid any 1h;
      uwsgi_cache_key $request_uri;
      uwsgi_pass unix:///var/run/app/uwsgi.sock;
      uwsgi_read_timeout 120s;
      }

      location / {
      try_files $uri @uwsgi;
      }
      }


      let's say, I want to disable cache for a particular location. I add after block for location / another location:



        location /dynamic{
      uwsgi_cache off;
      try_files $uri @uwsgi;
      }


      But it doesn't work and the view still cached. Is it possible or not supposed to work like this at all?



      UPD: I've also tried to configure cache in location /. In this case, it simply doesn't work.







      nginx uwsgi






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 8 at 13:19

























      asked Nov 8 at 9:35









      Andrey Rusanov

      2,68421935




      2,68421935
























          1 Answer
          1






          active

          oldest

          votes

















          up vote
          1
          down vote



          accepted










          When you access /dynamic the nginx sets uwsgi_cache off but then you redirect to @uwsgi location where you have cache enabled. I think that causes your problem.



          Try moving cache config to server context:



          uwsgi_cache_path /tmp/nginx_cache/ levels=1:2 keys_zone=mycache:60m inactive=10m;

          server {
          listen *:80;
          server_name thewebsite.loc;

          uwsgi_cache mycache;
          uwsgi_cache_valid any 1h;
          uwsgi_cache_key $request_uri;


          location @uwsgi {
          include uwsgi_params;
          uwsgi_pass unix:///var/run/app/uwsgi.sock;
          uwsgi_read_timeout 120s;
          }

          location / {
          try_files $uri @uwsgi;
          }

          location /dynamic {
          uwsgi_cache off;
          try_files $uri @uwsgi;
          }

          }



          CAUTION: I did not test this config, I'm not sure if it will work







          share|improve this answer





















            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














             

            draft saved


            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53204951%2fdifferent-configuration-of-uwsg-cache-depends-on-url-path%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            1
            down vote



            accepted










            When you access /dynamic the nginx sets uwsgi_cache off but then you redirect to @uwsgi location where you have cache enabled. I think that causes your problem.



            Try moving cache config to server context:



            uwsgi_cache_path /tmp/nginx_cache/ levels=1:2 keys_zone=mycache:60m inactive=10m;

            server {
            listen *:80;
            server_name thewebsite.loc;

            uwsgi_cache mycache;
            uwsgi_cache_valid any 1h;
            uwsgi_cache_key $request_uri;


            location @uwsgi {
            include uwsgi_params;
            uwsgi_pass unix:///var/run/app/uwsgi.sock;
            uwsgi_read_timeout 120s;
            }

            location / {
            try_files $uri @uwsgi;
            }

            location /dynamic {
            uwsgi_cache off;
            try_files $uri @uwsgi;
            }

            }



            CAUTION: I did not test this config, I'm not sure if it will work







            share|improve this answer

























              up vote
              1
              down vote



              accepted










              When you access /dynamic the nginx sets uwsgi_cache off but then you redirect to @uwsgi location where you have cache enabled. I think that causes your problem.



              Try moving cache config to server context:



              uwsgi_cache_path /tmp/nginx_cache/ levels=1:2 keys_zone=mycache:60m inactive=10m;

              server {
              listen *:80;
              server_name thewebsite.loc;

              uwsgi_cache mycache;
              uwsgi_cache_valid any 1h;
              uwsgi_cache_key $request_uri;


              location @uwsgi {
              include uwsgi_params;
              uwsgi_pass unix:///var/run/app/uwsgi.sock;
              uwsgi_read_timeout 120s;
              }

              location / {
              try_files $uri @uwsgi;
              }

              location /dynamic {
              uwsgi_cache off;
              try_files $uri @uwsgi;
              }

              }



              CAUTION: I did not test this config, I'm not sure if it will work







              share|improve this answer























                up vote
                1
                down vote



                accepted







                up vote
                1
                down vote



                accepted






                When you access /dynamic the nginx sets uwsgi_cache off but then you redirect to @uwsgi location where you have cache enabled. I think that causes your problem.



                Try moving cache config to server context:



                uwsgi_cache_path /tmp/nginx_cache/ levels=1:2 keys_zone=mycache:60m inactive=10m;

                server {
                listen *:80;
                server_name thewebsite.loc;

                uwsgi_cache mycache;
                uwsgi_cache_valid any 1h;
                uwsgi_cache_key $request_uri;


                location @uwsgi {
                include uwsgi_params;
                uwsgi_pass unix:///var/run/app/uwsgi.sock;
                uwsgi_read_timeout 120s;
                }

                location / {
                try_files $uri @uwsgi;
                }

                location /dynamic {
                uwsgi_cache off;
                try_files $uri @uwsgi;
                }

                }



                CAUTION: I did not test this config, I'm not sure if it will work







                share|improve this answer












                When you access /dynamic the nginx sets uwsgi_cache off but then you redirect to @uwsgi location where you have cache enabled. I think that causes your problem.



                Try moving cache config to server context:



                uwsgi_cache_path /tmp/nginx_cache/ levels=1:2 keys_zone=mycache:60m inactive=10m;

                server {
                listen *:80;
                server_name thewebsite.loc;

                uwsgi_cache mycache;
                uwsgi_cache_valid any 1h;
                uwsgi_cache_key $request_uri;


                location @uwsgi {
                include uwsgi_params;
                uwsgi_pass unix:///var/run/app/uwsgi.sock;
                uwsgi_read_timeout 120s;
                }

                location / {
                try_files $uri @uwsgi;
                }

                location /dynamic {
                uwsgi_cache off;
                try_files $uri @uwsgi;
                }

                }



                CAUTION: I did not test this config, I'm not sure if it will work








                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 9 at 9:42









                Kamil Niski

                2,399214




                2,399214






























                     

                    draft saved


                    draft discarded



















































                     


                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53204951%2fdifferent-configuration-of-uwsg-cache-depends-on-url-path%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Guess what letter conforming each word

                    Port of Spain

                    Run scheduled task as local user group (not BUILTIN)