2015-10-07 9 views
5

निम्नलिखित वीडियो लिंक सफारी 9.0 (नवीनतम संस्करण) के साथ नहीं खेला जा सकता है। लेकिन सफारी, क्रोम और फ़ायरफ़ॉक्स के पुराने संस्करण खेल सकते हैं।सफारी 9.0 स्टोरेज सर्वर पर एमपी 4 वीडियो नहीं चला सकता

http://assets00.grou.ps/0F2E3C/wysiwyg_files/Videos/saksuka/20150928104628-lhmkkfbhnkiisbhht.mp4

मैं सफारी 9.0 के साथ खेलते हैं जब मैं अपने कंप्यूटर पर सर्वर से वीडियो डाउनलोड कर सकते हैं।

यही कारण है कि मुझे नहीं लगता कि यह समस्या वीडियो एन्कोडिंग उपजी है।

मैंने इन सेटिंग्स को किया है;

mime.types 
video/mp4 mp4 m4v 
video/ogg ogv 
video/webm webm 

httpd.conf 
AddType video/mp4 mp4 m4v 
AddType video/ogg ogv 
AddType video/webm webm 

.htaccess 
AddType video/mp4 mp4 m4v 
AddType video/ogg ogv 
AddType video/webm webm 
+0

एस 3 और क्लाउडफ्लेयर के माध्यम से एक छोटे से वीडियो की सेवा करते समय मुझे भी यही समस्या है। स्ट्रीमिंग हेडर के साथ प्रतिक्रिया देने वाले सर्वर पर ठीक काम करता है, इसलिए समस्या वीडियो एन्कोडिंग नहीं है। –

उत्तर

5

यह सफारी पर कुछ एमपी 4 फ़ाइलों के साथ आवर्ती समस्या प्रतीत होता है।

मैंने आपके वीडियो को स्थानीयहोस्ट नोड.जेएस स्थिर सर्वर पर परीक्षण किया और यह सफारी में ठीक खेला, जिसका मतलब है कि वीडियो स्वयं ठीक होना चाहिए।

यदि आप सफारी में वेब इंस्पेक्टर को देखते हैं तो आप देखेंगे कि वेब अनुरोध में कुछ शीर्षलेख शामिल नहीं हैं। इससे कुछ सर्वर समस्याएं आती हैं और वे सफारी की अपेक्षा करने वाले तरीके का जवाब नहीं देते हैं, या बिल्कुल जवाब नहीं देते हैं।

आप चर्चा की जा रही समान समस्याओं को देख सकते हैं (दूसरा ऐसा नहीं है जो मुझे लगता है लेकिन यह दिखाता है कि सर्वर पर भेजे गए अनुरोध में शामिल जानकारी से सर्वर को 'निर्णय लेने' का कारण बनने का कारण बन सकता है):

अद्यतन:

क्रोम से अनुरोध को कैप्चर करने के लिए वायरशर्क का उपयोग करके, इसे सर्वर से प्रतिक्रिया के परिणामस्वरूप देखा जा सकता है, जबकि सफारी (उसी मशीन पर) के अनुरोध के परिणामस्वरूप सर्वर से कोई प्रतिक्रिया नहीं होती है।

अनुरोध आम तौर पर समान होते हैं और दोनों में रेफरर हेडर शामिल होता है। सफ़ारी ब्राउज़र के लिए ही पहले 2 बाइट्स शुरू में सर्वर से वापस करने पूछ रहा है - यह 'सीमा' शीर्षक है, जो बाइट्स निर्दिष्ट करने के लिए प्रयोग किया जाता है का उपयोग करके इस करता लेकर है कि एक फ़ाइल रिटर्न:

  • रेंज : बाइट्स = 0-1 \ r \ n

क्रोम दूसरी ओर अपनी सीमा अनुरोध में पूरे वीडियो अनुरोध करता है:

  • रेंज: बाइट्स = 0- \ r \ n

हालांकि, एक HTTP उपकरण का उपयोग (उदा। पोस्टमैन) क्रोम पर और 0-1 तक रेंज को बदलने से सर्वर को क्रोम केस में प्रतिक्रिया देना बंद नहीं होता है। वास्तव में, जहां तक ​​संभव हो, सेट करने के लिए टूल का उपयोग करके, सफारी सेट के रूप में सभी समान हेडर अभी भी वीडियो को वापस ठीक लगते हैं।

+0

क्या आप समाधान को थोड़ा सा स्पष्ट कर सकते हैं?ऐसा लगता है कि यह उत्तर समाधान प्रदान नहीं करता है और इसके बजाय हमें अन्य SO प्रश्नों के बारे में बताता है। – rinogo

+1

@rinogo एक उचित टिप्पणी है - उत्तर एक जांच लॉग की तरह थोड़ा है, मुझे स्वीकार करना है। मूल वीडियो लिंक काम नहीं कर रहा है इसलिए मैं फिर से परीक्षण नहीं कर सकता, लेकिन अगर आपके पास ऐसा कोई उदाहरण है जो काम नहीं करता है तो इसे भेजें और जैसा कि मैं नवीनतम सफारी संस्करण देखना चाहता हूं। यह संभव है कि फ़ाइल सर्वर ब्राउज़र प्रकार को पहचान रहा था और इसके आधार पर इसकी प्रतिक्रिया बदल रहा था, लेकिन यह सुनिश्चित करना मुश्किल है, यह निश्चित था कि वीडियो स्थानीय रूप से ठीक से खेला गया था और सर्वर ने अलग-अलग ब्राउज़र को अनुरोध करने के लिए अलग-अलग प्रतिक्रिया दी । – Mick

+0

यह मेरे लिए बहुत उपयोगी था। मैंने कभी अनुमान लगाया नहीं होगा कि जब सफारी रेंज अनुरोधों का जवाब नहीं दे सका तो सफारी विफल हो गई। – danneu

संबंधित मुद्दे