मैं शायद ASP.NET से बहुत ज्यादा उम्मीद है, लेकिन अपाचे में यह URL पुनः लिखने के तुच्छ है, तो कुछ इस तरह का अनुरोध: http://mysite/myfolder/mypage/niceurlparameter वास्तव में स्थैतिक पृष्ठ की सेवा के लिए http://mysite/mypage.htmlइस ग्लोबल.एक्सएक्स रूटिंग सेटिंग में क्या गलत है?
मैं कैसे हैं कि Global.asax में प्रबंधन करता है?
मैं इस की कोशिश की है:
RouteTable.Routes.MapPageRoute("Static HTML", "myfolder/{page}/*", "~/myfolder/{page}.html");
लेकिन यह 404 लौटाने जब मैं अनुरोध करता http://mysite/myfolder/mypage/niceurlparameter रहता है।
बहरहाल, यह काम करता है:
RouteTable.Routes.MapPageRoute("Static HTML", "myfolder/{page}.html/*", "~/myfolder/{page}.html");
तो मैं mypage.html मिलता है जब http://mysite/myfolder/mypage.html/niceurlparameter का अनुरोध।
मैं बस अपने यूआरएल में ".html" भाग से छुटकारा पाना चाहता हूं। मैं क्या खो रहा हूँ?
अद्यतन: किसी कारण से, पूर्व के मामले में '*' वाइल्डकार्ड स्वीकार नहीं किया गया है।
बदलने के लिए:
RouteTable.Routes.MapPageRoute("Static HTML", "myfolder/{page}/{whatever}", "~/myfolder/{page}.html");
मार्ग पृष्ठ HTML करने के लिए अनुरोध करने के लिए प्रकट होता है, लेकिन फिर मैं त्रुटि मिलती है:
There is no build provider registered for the extension '.html'.
क्यों दुनिया में यह सिर्फ पूर्व के मामले में काम करेगा (यूआरएल में एचटीएमएल के साथ), और जब एचटीएमएल छोड़ दिया जाता है?
आईआईएस का कौन सा संस्करण आप चल रहे हैं? मुझे याद है कि आईआईएस 6 बॉक्स के बाहर इसकी अनुमति नहीं देगा, आपको वाइल्डकार्ड मैपिंग जोड़ने की जरूरत है। –
संभावित समाधान के लिए यह प्रश्न देखें: http://stackoverflow.com/q/9918066/25727 – Jan
आईआईएस v7.5 है। सुझाए गए लिंक में मदद मिली। धन्यवाद – tishma