One Request to the Multiple Nginx Host with Args










1















I've a little problem for request routing with Nginx for backend services .In my scenario I've a frontend service and another logging service for log the 404 requests with different request type .



---> serviceFrontend/product/productName ----> if 404 ----> serviceLogger?productId=productName



How I can create new request and send request at same time of serviceFrontend service triggered .



Please help me !




SOLVE OF THE PROBLEM



I've handled my problem with post_action annotation with nginx .



Resource :



https://forum.nginx.org/read.php?2,275992,275992










share|improve this question




























    1















    I've a little problem for request routing with Nginx for backend services .In my scenario I've a frontend service and another logging service for log the 404 requests with different request type .



    ---> serviceFrontend/product/productName ----> if 404 ----> serviceLogger?productId=productName



    How I can create new request and send request at same time of serviceFrontend service triggered .



    Please help me !




    SOLVE OF THE PROBLEM



    I've handled my problem with post_action annotation with nginx .



    Resource :



    https://forum.nginx.org/read.php?2,275992,275992










    share|improve this question


























      1












      1








      1








      I've a little problem for request routing with Nginx for backend services .In my scenario I've a frontend service and another logging service for log the 404 requests with different request type .



      ---> serviceFrontend/product/productName ----> if 404 ----> serviceLogger?productId=productName



      How I can create new request and send request at same time of serviceFrontend service triggered .



      Please help me !




      SOLVE OF THE PROBLEM



      I've handled my problem with post_action annotation with nginx .



      Resource :



      https://forum.nginx.org/read.php?2,275992,275992










      share|improve this question
















      I've a little problem for request routing with Nginx for backend services .In my scenario I've a frontend service and another logging service for log the 404 requests with different request type .



      ---> serviceFrontend/product/productName ----> if 404 ----> serviceLogger?productId=productName



      How I can create new request and send request at same time of serviceFrontend service triggered .



      Please help me !




      SOLVE OF THE PROBLEM



      I've handled my problem with post_action annotation with nginx .



      Resource :



      https://forum.nginx.org/read.php?2,275992,275992







      http nginx lua request microservices






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Dec 1 '18 at 22:23







      Oğuz Aral

















      asked Nov 14 '18 at 23:41









      Oğuz Aral Oğuz Aral

      3417




      3417






















          1 Answer
          1






          active

          oldest

          votes


















          0














          You should have a custom error location for 404 error and pass request through proxy to your upstream. Also you need rewrite module to set ProductName at query string. Something like bellow:



          location /serviceFrontend/product 
          error_page 404 = @log404;


          location @log404
          rewrite ^/serviceFrontend/product/(.*)$ /serviceLogger?productId=$1 break;
          proxy_pass http://logger.example.com;






          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',
            autoActivateHeartbeat: false,
            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%2f53310409%2fone-request-to-the-multiple-nginx-host-with-args%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









            0














            You should have a custom error location for 404 error and pass request through proxy to your upstream. Also you need rewrite module to set ProductName at query string. Something like bellow:



            location /serviceFrontend/product 
            error_page 404 = @log404;


            location @log404
            rewrite ^/serviceFrontend/product/(.*)$ /serviceLogger?productId=$1 break;
            proxy_pass http://logger.example.com;






            share|improve this answer



























              0














              You should have a custom error location for 404 error and pass request through proxy to your upstream. Also you need rewrite module to set ProductName at query string. Something like bellow:



              location /serviceFrontend/product 
              error_page 404 = @log404;


              location @log404
              rewrite ^/serviceFrontend/product/(.*)$ /serviceLogger?productId=$1 break;
              proxy_pass http://logger.example.com;






              share|improve this answer

























                0












                0








                0







                You should have a custom error location for 404 error and pass request through proxy to your upstream. Also you need rewrite module to set ProductName at query string. Something like bellow:



                location /serviceFrontend/product 
                error_page 404 = @log404;


                location @log404
                rewrite ^/serviceFrontend/product/(.*)$ /serviceLogger?productId=$1 break;
                proxy_pass http://logger.example.com;






                share|improve this answer













                You should have a custom error location for 404 error and pass request through proxy to your upstream. Also you need rewrite module to set ProductName at query string. Something like bellow:



                location /serviceFrontend/product 
                error_page 404 = @log404;


                location @log404
                rewrite ^/serviceFrontend/product/(.*)$ /serviceLogger?productId=$1 break;
                proxy_pass http://logger.example.com;







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 15 '18 at 0:57









                sharezsharez

                57049




                57049





























                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53310409%2fone-request-to-the-multiple-nginx-host-with-args%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







                    這個網誌中的熱門文章

                    Barbados

                    How to read a connectionString WITH PROVIDER in .NET Core?

                    Node.js Script on GitHub Pages or Amazon S3