2012-02-06 16 views
58

के बिना यूआरएल मैंने अभी एक सहयोगी से सीखा है कि एक लिंक में एक यूआरएल के "http | https" भाग को छोड़कर यह यूआरएल उस पृष्ठ का उपयोग करेगा जो पेज पर उपयोग करता है।यूआरएल "http | https"

<a href="//www.google.com">Google</a> 

वह लिंक http://www.google.com के लिए जाना जाएगा:

उदाहरण के लिए, यदि मेरा पेज http://www.example.com पर पहुँचा और है मैं (मोर्चे पर नोटिस '//') के लिए एक कड़ी है।

लेकिन अगर मैं एक ही लिंक के साथ https://www.example.com पर पृष्ठ का उपयोग, यह https://www.google.com

मैं इस बारे में अधिक जानकारी के लिए ऑनलाइन देखने के लिए करना चाहता था के लिए जाना जाएगा, लेकिन मैं एक अच्छा खोज वाक्यांश की मुसीबत सोच हो रही है। यदि मैं "HTTP के बिना यूआरएल" की खोज करता हूं तो लौटाए गए पृष्ठ इस फ़ॉर्म के साथ यूआरएल के बारे में हैं: "www.example.com", जो मैं नहीं ढूंढ रहा हूं।

क्या आप इसे एक निर्बाध यूआरएल कहते हैं? एक प्रोटोकॉल-कम यूआरएल?

क्या यह सभी ब्राउज़रों में काम करता है? मैंने इसे एफएफ और आईई 8 में परीक्षण किया और यह दोनों में काम किया। क्या यह मानक का हिस्सा है, या मुझे अधिक ब्राउज़रों का परीक्षण करना चाहिए?

+5

वर्तमान पृष्ठ में से किसी एक को संरक्षित करने के लिए प्रोटोकॉल (योजना) को छोड़कर निरपेक्ष यूआरएल के संभावित डुप्लिकेट] (http://stackoverflow.com/questions/4978235/absolute-urls-omitting-the-protocol -scheme में आदेश करने के लिए बनाए रखने के-एक-ऑफ-द) – David

+1

संदर्भ के लिए (के बाद से आप खोज करने के क्या शर्तों पूछा), गूगल खोज जो मुझे मूल StackOverflow सवाल करने के लिए लाया था: "प्रोटोकॉल के बिना संपूर्ण url " – David

+0

आप यह निर्दिष्ट नहीं कर रहे हैं कि क्या यह एक http या https है, इसलिए ब्राउजर अंतिम पृष्ठ ले कर यह निर्णय लेता है कि यह लिंक उसी पृष्ठ से आया है। – raym0nd

उत्तर

48

प्रोटोकॉल सापेक्ष यूआरएल।

आपको कुछ ब्राउज़रों में असामान्य सुरक्षा चेतावनियां मिल सकती हैं।

एक संक्षिप्त परिभाषा के लिए भी Wikipedia Protocol-relative URLs देखें।

एक समय में, it was recommended; लेकिन आगे बढ़ रहे हैं, it should be avoided। यह भी देखें, StackOverflow सवाल, Why use protocol-relative URLs at all?

11

यह नेटवर्क पथ संदर्भ (भाग जाता है कि लापता scheme या कहा जाता है) defined in RFC3986 Section 4.2

4,2 सापेक्ष संदर्भ में कहा जाता है

एक रिश्तेदार संदर्भ लेता है पदानुक्रमित वाक्यविन्यास (धारा 1.2.3) का लाभ किसी अन्य पदानुक्रमित यूआरआई के नाम के सापेक्ष एक यूआरआई संदर्भ व्यक्त करने के लिए।

relative-ref = relative-part [ "?" query ] [ "#" fragment ] 

    relative-part = "//" authority path-abempty 
       /path-absolute 
       /path-noscheme 
       /path-empty 

यूआरआई एक रिश्तेदार संदर्भ, यह भी लक्ष्य यूआरआई के रूप में जाना द्वारा जाना जाता है, संदर्भ संकल्प धारा 5.

एक रिश्तेदार संदर्भ है कि दो स्लैश पात्रों के साथ शुरू होता है की एल्गोरिथ्म लगाने से प्राप्त किया जाता है ने नेटवर्क-पथ संदर्भ (जोर मेरा) कहा है; ऐसे संदर्भ शायद ही कभी उपयोग किए जाते हैं। एक सापेक्ष संदर्भ जो एकल स्लैश वर्ण से शुरू होता है उसे पूर्ण-पथ संदर्भ कहा जाता है। एक रिश्तेदार संदर्भ जो स्लैश वर्ण से शुरू नहीं होता है उसे सापेक्ष-पथ संदर्भ कहा जाता है।

एक पथ खंड जिसमें एक कोलन वर्ण होता है (उदाहरण के लिए, "यह: वह") किसी रिश्तेदार पथ संदर्भ के पहले खंड के रूप में उपयोग नहीं किया जा सकता है, क्योंकि इसे किसी योजना के नाम के लिए गलत माना जाएगा। इस तरह के सेगमेंट को एक सापेक्ष-पथ संदर्भ बनाने के लिए डॉट-सेगमेंट (उदा।, "./this:that") से पहले होना चाहिए।

+0

// एचटीएमएल में बेस टैग में इस्तेमाल नहीं किया जा सकता है। मैंने

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