coldfusion - IIS 8/8.5 कोल्डफ्यूजन 10/11 पर त्रुटि 500



coldfusion-10 iis-8 (1)

ठीक है, मैं अंत में यह तय करने में सक्षम था।

समस्या

मैं एक ही आईआईएस वेबसाइट के तहत प्रत्येक स्वयं के वर्चुअल निर्देशिका में एकाधिक वेब अनुप्रयोग चलाता हूं। यह पता चला है कि web.config में existingResponse="PassThrough" को जोड़ने से आभासी निर्देशिकाओं में आंशिक रूप से काम करता है उस सेटिंग के बिना मुझे कभी भी कोई ColdFusion त्रुटि नहीं मिलती है और इसके बजाय मैं हमेशा आईआईएस 500 त्रुटि देखता हूं। अगर मैं वर्चुअल निर्देशिका के web.config में existingResponse="PassThrough" को existingResponse="PassThrough" , तो अगर आप सीधे सीसीएम स्क्रिप्ट को कॉल किए बिना साइट को एक्सेस करते हैं, तो ColdFusion त्रुटियों को केवल अग्रेषित किया जाता है (उदाहरण के लिए: example.com/ example.com/index .cfm)।

समाधान

समाधान आसान था। मुझे सिर्फ existingResponse="PassThrough" सेटिंग को वेब आईआईएस वेबसाइट के वेब। existingResponse="PassThrough" जोड़ना था और सब कुछ काम कर रहा था।

मुझे लगता है कि यह आईआईएस 8 और 8.5 में एक बग है, जब से मैंने दो बार जांच की कि मेरे आईआईएस 7.5 सर्वर पर और मुझे मूल वेबसाइट पर प्रॉपर्टी जोड़ना नहीं पड़ा।

यदि मेरी कोल्डफ्यूजन स्क्रिप्ट में मेरे पास कोई त्रुटि है, तो मुझे कॉलिफ़्यूज़न के बजाय आईआईएस से 500 त्रुटि संदेश मिल रहा है। यह केवल तभी होता है जब मैं यूआरएल में फ़ाइल का नाम प्रदान करता हूं और अगर मैं स्क्रिप्ट का नाम बिना यूआरएल खोलता है तो ऐसा नहीं होता (जो कि index.cfm खोलेगा)।

उदाहरण के लिए:

मैं अपने 3 कोल्डफ्यूजन प्लेटफार्मों में से 2 पर इस समस्या को पुन: उत्पन्न कर सकता हूं:

  • कार्य: IIS 7.5 कोल्डफ्यूजन 10 अपडेट 12 (अद्यतन कनेक्टर के साथ)
  • कार्य नहीं : कोल्ड फ्यूजन 10 अपडेट 12 के साथ आईआईएस 8 (अद्यतन कनेक्टर के साथ)
  • कार्य नहीं : कोल्डफ्यूजन 11 के साथ आईआईएस 8.5

मेरी अनुक्रमणिका.cfm और foobar.cfm:

<!--- provoke a coldfusion error --->
<cfset foo

मेरी वेब। कॉन्फ़िगर:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <httpErrors errorMode="Custom" existingResponse="PassThrough" />
    </system.webServer>
</configuration>

मेरे लिए यह दिखता है कि आईआईएस 8 और आईआईएस 8.5 के साथ कोल्ड फ्यूजन कनेक्टर के साथ समस्या है।