बेस URL में कोई भी चिह्न (+) नहीं है, जो URL (querystring नहीं), IIS7 और IIS7.5 (Windows Server 2008 और 2008 R2) ASP.NET अनुप्रयोग पर डिफ़ॉल्ट हैंडलर को URL अग्रेषित करने के लिए प्रकट नहीं होता है । मैंने एक कस्टम HTTP हैंडलर के साथ इस मुद्दे को नोटिस करना शुरू कर दिया, *.html
लेकिन मेरे पास एक ही मुद्दा है *.aspx
। IIS6 (सर्वर 2003) को इन समान URL के साथ कोई समस्या नहीं है।
समस्या को दोहराने के लिए, ASP.NET साइट में, मैंने ASPX फ़ाइलों का एक सेट बनाया, जो एक साधारण प्रतिक्रिया करता था। विभिन्न नामों के साथ:
- test_something.aspx
- test_some + thing.aspx
- test_some thing.aspx
तीसरी फ़ाइल यह देखने के लिए एक परीक्षण थी कि क्या IIS7 [.5] प्लस प्रतीकों को रिक्त स्थान के रूप में मान रहा था (जैसा कि यह क्वेरिस्टो में होगा); यह मामला नहीं प्रतीत होता है। इन सभी फ़ाइलों के स्थान पर, किसी भी ASP.NET हैंडलर को प्राप्त करने से पहले IIS6 लेकिन IIS7 / IIS7.5 में 404 हिट http://somehost/test_some+thing.aspx
या http://somehost/test_some%2bthing.aspx
ठीक काम करेगा। क्या IIS7 / 7.5 में कुछ कॉन्फ़िगरेशन है जो मुझे HTTP हैंडलर निर्धारित करने के लिए उपयोग किए गए अंतिम एक्सटेंशन को याद किए बिना URL में "प्लस" देखने के लिए इसे "लापता" करने के लिए याद आ रही है?
\+
?