2012-02-10 12 views
5

संभव डुप्लिकेट के साथ लिंक करता है:
Is it valid to replace with // in a <script src=“…”>?
Links start with two slashesशुरुआत बाहरी साइट "//"

मैं कुछ साइटों पर इस देखा है अब।

<link rel="shortcut icon" href="//en.wikipedia.org/favicon.ico" /> 
<link rel="apple-touch-icon" href="//upload.wikimedia.org/wikipedia/commons/f/f1/Wikipedia-mobile-icon.png" /> 
<link rel="copyright" href="//creativecommons.org/licenses/by-sa/3.0/" /> 

वहाँ // साथ बाहरी लिंक शुरू करने के साथ कुछ मानक है: एक आसान उदाहरण विकिपीडिया लैंडिंग पृष्ठ के स्रोत को देखने के लिए है? क्या यह अतिरिक्त https?: डाउनलोड करने से बचने के लिए किया गया है और कुछ पात्रों को सहेजने के लिए किया गया है क्योंकि अधिकतर ब्राउज़र बाकी योजना को जोड़ने के लिए पर्याप्त स्मार्ट हैं? या यह एक वैध बात है, शायद किसी अन्य कारण से?

+0

एसपीडीवाई उपलब्ध होने पर प्रोटोकॉल को मजबूर नहीं कर रहा है? –

+0

उस पर एक और पोस्ट है: http://stackoverflow.com/questions/7273573/links-start-with-two-slashes – scott

+3

डुप्लिकेट [क्या यह http: // // // // // "http: // ...">?] (http://stackoverflow.com/questions/550038/is-it-valid-to-replace-http-with-in-a-script-src-http) और [क्या मैं अपने सभी http: // लिंक को // //] (http://t ]://stackoverflow.com/questions/4831741/can-i-change-all-my-http-links-to-just) में बदल सकता हूं और [ अधिक] (http://stackoverflow.com/search?tab=votes&q=%22protocol%20relative%22)। – josh3736

उत्तर

7

इसे आम तौर पर प्रोटोकॉल-रिश्तेदार यूआरएल कहा जाता है और ब्राउज़र को उसी प्रोटोकॉल का उपयोग करके संसाधन डाउनलोड करने की अनुमति देता है क्योंकि पेज लोड किया जा रहा था। इसलिए यदि उपयोगकर्ता ने https यूआरएल के माध्यम से पृष्ठ लोड किया था, तो // के साथ निर्दिष्ट संसाधन https के माध्यम से लोड किए जाएंगे, अन्यथा वे नियमित http के माध्यम से लोड किए जाएंगे।

आईई के पुराने संस्करणों में बदसूरत उपयोगकर्ता-असभ्य संदेश को रोकने में आपकी मदद करने में एक बात यह है कि पृष्ठ में सुरक्षित और गैर-सुरक्षित संसाधन दोनों हैं।

पॉल आयरिश इस बारे में एक अच्छा ब्लॉग पोस्ट में लिखा है:

0

यह आपको http या https निर्दिष्ट किए बिना संसाधन डाउनलोड करने की अनुमति देता है; यह जो भी आप वर्तमान में उपयोग कर रहे हैं उसका उपयोग करेंगे।

0

नहीं URL में एक योजना को निर्दिष्ट ब्राउज़र का कारण मौजूदा योजना की कल्पना करनी होगी। आप यहाँ इस बारे में एक अच्छा लेख पढ़ सकते हैं:

http://paulirish.com/2010/the-protocol-relative-url/

यह का मुख्य लाभ यह है:

ब्राउज़र HTTPS के माध्यम से में है कि वर्तमान पृष्ठ को देखने जाता है, तो यह हूँ एचटीटीपीएस प्रोटोकॉल के साथ संपत्ति का अनुरोध करें, अन्यथा यह आमतौर पर * HTTP के साथ अनुरोध करेगा। यह उस भयानक "यह पृष्ठ में सुरक्षित और गैर-सुरक्षित आइटम दोनों शामिल हैं" आईई, में त्रुटि संदेश एक ही प्रोटोकॉल के भीतर आपके सभी संपत्ति अनुरोधों को रोकता है।

कुछ quirks रहे हैं ...

जब एक स्टाइलशीट के लिए एक <link> या @import पर इस्तेमाल किया, IE7 और IE8 फाइल डाउनलोड दो बार। हालांकि, अन्य सभी उपयोग ठीक हैं।

... लेकिन सामान्य रूप से आप इसे सुरक्षित रूप से उपयोग कर सकते हैं।

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