2011-10-24 13 views
7

यदि मैं header('Content-Type:text/plain; charset=ISO-8859-15'); पर कॉल करता हूं तो ब्राउज़र इसे दिखाने के बजाय फ़ाइल डाउनलोड करेगा। इसके बजाय text/html का उपयोग करना। (डाउनलोड की गई फाइल को वैसे भी संसाधित किया जाता है, यह स्रोत कोड डाउनलोड नहीं कर रहा है)"सामग्री-प्रकार: टेक्स्ट/सादा" फ़ाइल को डाउनलोड करने के लिए

मैंने header('Content-Disposition:inline;'); जोड़ने की कोशिश की है, लेकिन इसे अभी अनदेखा किया गया था।

मैं इस समस्या का कारण बनने के बारे में बहुत अनजान हूं, कोई सुझाव?

सर्वर एमएएमपी 1.9.6 (PHP 5.3.5, अपाचे/2.0.64) है।

संपादित करें: यह केवल क्रोम पर होता है, यह फ़ायरफ़ॉक्स, कैमिनो और सफारी पर काम करता है।

+0

यह क्या ब्राउज़र है? मुझे यकीन है कि आईई एक छवि को डाउनलोड करता है जब यह 'छवि/*' और 'टेक्स्ट/एचटीएमएल' के अलावा कुछ भी मुठभेड़ करता है। यही कारण है कि जावास्क्रिप्ट/सीएसएस फ़ाइलों को प्रदर्शित करने के बजाय डाउनलोड किया जाता है। –

+0

@rudi_visser: क्रोम –

+0

यह अजीब बात है, इसे कभी नहीं देखा (पुन: पेश नहीं कर सकता) :( –

उत्तर

11

मैं इस स्क्रिप्ट के साथ इस पुन: पेश नहीं कर सकते:

<?php 

    header('Content-Type:text/plain; charset=ISO-8859-15'); 
    echo "This is some text"; 

हालांकि, मैं इसे इस के साथ पुन: पेश कर सकते हैं:

<?php 

    header('Content-Type:text/plain; charset=ISO-8859-15'); 
    echo "\x00This is some text"; 

सुनिश्चित करें कि आपकी सामग्री वास्तव में सादे ASCII पाठ है ...

+3

यह है, मुझे लगता है। मुझे लगता है कि ब्राउजर ने इसे प्रदर्शित करने की कोशिश की होगी, भले ही नियंत्रण कक्ष हों। ऐसा लगता है जैसे मैंने माना गलत। –

-4

मेरे लिए यह काम करता है:

header('Content-Type:text/javascript;'); 
संबंधित मुद्दे