Nginx从客户端服务器接收post请求,然后将请求和客户端ip传递给后端特定URL

时间:2017-12-15 12:18:01

标签: django nginx

我正在接收来自客户端服务器的帖子请求,其中包含一些帖子数据,然后在传递给运行nginx的服务器后保存到数据库,我不知道如何配置Nginx来接收这些请求并使用特定网址将它们发送到应用程序后端,我将能够将它们保存在数据库中。我希望nginx给出客户端的IP地址和发布的请求。

谢谢,我还在学习如何正确使用Nginx。

这是我试图做的但没有成功

server{
  listen 80;
    server_name my_server_ip;
    error_log /var/log/nginx/error.log;
    # proxy_pass_header Server;

   location / {

           proxy_pass http://127.0.0.1:8000;
           proxy_set_header X-Forwarded-Host  $server_name;
           proxy_set_header X-Real-IP         $remote_addr;

         }

       location /user/user_request/{
           if ($request_method != 'POST'){
             return 405;
          }

          return 200;
          proxy_set_header X-Forwarded-For $remote_addr;
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          keepalive_requests 10;
          keepalive_timeout 75s;
          proxy_pass http://my_server_ip$request_uri;
    }


}

1 个答案:

答案 0 :(得分:2)

删除return 200;行,因为这将返回该函数,并且其下面的行未被执行。您不需要从此部分返回200,因为这将由您转发请求的应用程序处理。