के साथ हेडर सेट करना मैं एक सफल प्रमाणीकरण अनुरोध पर शीर्षलेख सेट करने के लिए auth_request का उपयोग करना चाहता हूं और उसके बाद उस अगली प्रॉक्सी इनलाइन के माध्यम से वास्तविक अनुरोध को संभालेगा।एनजीआईएनएक्स auth_request प्रॉक्सी
मैंने एनजीआईएनएक्स और विभिन्न प्रॉक्सी को अपनी बात करने के लिए सेट अप किया है, हालांकि मुझे यकीन है कि सर्वर से हेडर सेट करने के लिए (आरेख में ऑथ प्रॉक्सी) को सेट करना है, जिसे मैं ऑथ अनुरोध के लिए उपयोग कर रहा हूं जैसे कि हेडर अगले सर्वर (चित्र में बैकएंड सर्वर)
NGINX ---- auth request ----> AUTH PROXY
|
| <--- 201 <------ SUCCESS
|
----> underlying request ----> BACKEND SERVER
मेरे nginx config लग रहा है
तरहserver {
listen 9123;
resolver 10.3.0.2;
resolver_timeout 30;
location/{
auth_request /_auth;
proxy_set_header x-user $http_x_user;
proxy_pass http://backend_server;
}
location = /_auth {
internal;
proxy_pass https://auth;
proxy_pass_request_body off;
proxy_set_header Content-Length "";
proxy_set_header X-Original-URI $request_uri;
}
}
जब मैं (वास्तविक अनुरोध मैं nginx डीबग लॉग में निम्न देखें बनाने के इस भाग है पारित हो जाता है ऑथ सर्वर से प्रतिक्रिया का):
2013/10/14 17:46:42 [debug] 31222#0: *4 http proxy header: "Content-Type: text/html; charset=utf-8"
2013/10/14 17:46:42 [debug] 31222#0: *4 http proxy header: "Date: Mon, 14 Oct 2013 17:46:42 GMT"
2013/10/14 17:46:42 [debug] 31222#0: *4 http proxy header: "Server: nginx/1.2.5"
2013/10/14 17:46:42 [debug] 31222#0: *4 http proxy header: "Vary: Cookie"
2013/10/14 17:46:42 [debug] 31222#0: *4 http proxy header: "x-user: 1"
मैं x-user
शीर्षलेख लेना चाहता हूं और बैकएंड सर्वर से गुजरना चाहता हूं।
मैं location /
ब्लॉक में विभिन्न संयोजनों की कोशिश की है, लेकिन उनमें से कोई भी अभी तक काम किया है। जैसे
proxy_set_header x-user $upstream_http_x_user;
proxy_set_header x-user $http_x_user;
proxy_set_header x-user $sent_http_x_user;
proxy_pass_header x-user
इनमें से कोई नहीं काम करने के लिए लग रहे हैं। कोई भी विचार कैसे मैं इस कार्य को पूरा कर सकते हैं? कृपया ध्यान दें कि यह प्रमाणन प्रॉक्सी कि शीर्ष लेख है कि मैं बैकएंड सर्वर को भेजना चाहते हैं,
धन्यवाद, अपने काम करता है –
कैसे मैं $ उपयोगकर्ता कुकी से पारित कर सकते हैं? –
@ShivKumar उस के लिए एक नया सवाल को खोलने के। – mjallday