http - URL with trailing slash from AngularJs/ui-router to nginx accesses incorrect resource -


मेरे पास AngularJs ऐप ( ui-router द्वारा रूटिंग के साथ) ) nginx द्वारा सेवा की जा रही है

मुझे यकीन नहीं है कि कौन सा अपराधी है, लेकिन जब मैं अनुगामी स्लैश के साथ एक यूआरएल के साथ अपने ब्राउज़र को ताज़ा करें करता हूं, तो यह दिखता है जैसे यूआरएल के उत्तरार्द्ध को एक उपनिर्देशिका के रूप में माना जाता है, और स्थिर संसाधन ( img / css / js

उदाहरण:

  • रीसिंग www.site.com/login को logo.png की आवश्यकता होगी, जिसे www.site.com/images/ से अनुरोध किया जाएगा लोगो

  • पुनर्संरिंग www.site.com/login / (अनुगामी स्लैश) की आवश्यकता होगी logo.png , जो www.site.com / लॉगिन / images / से अनुरोध किया जाएगा,

मुझे किसी भी तरह से यह लॉगिन / को उप-डायरेक्टरी के रूप में माना जा रहा है।

एनजीएन सी Onfig:

चूंकि कोणीय अपने स्वयं का रूटिंग करता है, मेरे nginx config में मेरे पास एक एपीआई मार्ग REST एपीआई के लिए है, और सभी अन्य यूआरआई के लिए फ़ॉलबैक मार्ग , जो सभी अज्ञात संसाधनों के लिए index.html पर कार्य करता है

मैंने यूआरआई से पीछे वाली स्लिप्स को छांटने के लिए कॉन्फ़िग को जोड़ दिया है।

  # एपीआई मार्ग स्थान ~ * / एपीआई।? {...} # फ़ॉलबैक रूट स्थान ~ *।? {# स्ट्रिप को कोई पिछला स्लैश पुनर्लेखन करें ^ / (। *) / $ / $ 1 ब्रेक; रूट / var / www / site / app; सूचकांक index.html; # सेवा इंडेक्स.html अगर यूरी मौजूद नहीं है try_files $ uri $ uri / /index.html = 404; }  

जब भी मैं एक अनुगामी स्लैश के साथ एक मार्ग को रीफ़्रेश करने का प्रयास करता हूं, ऐसा लगता है कि कुछ (कोणीय / एनजीएन / ब्राउज़र?) यूआरआई को डायरेक्टरी के तौर पर मानता है, और उपसर्ग

मेरे nginx लॉग से कुछ अंश हैं:

वर्क्स : कोई पिछला स्लैश के साथ कोई कोणीय मार्ग ताज़ा करें

http: // localhost / login

  [debug]: http अनुरोध लाइन: "GET / लॉगिन HTTP / 1.1" [डीबग]: http हैडर: "रेफेरर: http: // localhost /" [डीबग]: http अनुरोध पंक्ति: "GET /images/logo.png HTTP / 1.1"  

काम नहीं करता: पीछे वाले स्लैश के साथ एक कोणीय मार्ग को ताज़ा करें

http: // localhost / login / Http: // localhost / login / "[debug]: http: // <>

प्रश्न

मुझे यकीन नहीं है कि रेफरर हैडर एक लाल-हेरिंग है?

प्रश्न / P>

मैं कोणीय और / या ui-router और / या ngingx (या जो भी अपराधी है) को कॉन्फ़िगर कर सकता हूं स्लैश के साथ रिफ्रेश किए गए मार्ग काम करता है?

यह रूट के आधार को सेट करके तय किया गया

  & lt; base href = "/" & gt;  

Comments

Popular posts from this blog

c# - Reactive Extensions ControlScheduler -

ios - How to determine if NSLayoutConstraint is horizontal or vertical? -

javascript - Enable/Disable form elements and changing the values of button at a time? -