होस्ट की अनुमतियां और कॉन्टेंट स्क्रिप्ट का मिलान, मैच पैटर्न से तय किए गए यूआरएल के सेट पर आधारित होता है. मैच पैटर्न, असल में एक ऐसा यूआरएल होता है जो अनुमति वाले स्कीम (http
, https
, file
या ftp
) से शुरू होता है. साथ ही, इसमें '*
' वर्ण हो सकते हैं. स्पेशल पैटर्न <all_urls>
, अनुमति वाले स्कीम से शुरू होने वाले किसी भी यूआरएल से मैच करता है. हर मैच पैटर्न में तीन हिस्से होते हैं:
scheme—उदाहरण के लिए,
http
याfile
या*
ध्यान दें:file
यूआरएल का ऐक्सेस अपने-आप नहीं मिलता. उपयोगकर्ता को एक्सटेंशन मैनेजमेंट पेज पर जाना होगा और अनुरोध करने वाले हर एक्सटेंशन के लिए,file
ऐक्सेस करने के लिए ऑप्ट इन करना होगा.होस्ट—उदाहरण के लिए,
www.google.com
या*.google.com
या*
; अगर स्कीमfile
है, तो होस्ट वाला कोई हिस्सा नहीं हैपाथ—उदाहरण के लिए,
/*
,/foo*
या/foo/bar
. पाथ, होस्ट की अनुमति में मौजूद होना चाहिए. हालांकि, इसे हमेशा/*
के तौर पर माना जाता है.
इसका बुनियादी सिंटैक्स यहां दिया गया है:
<url-pattern> := <scheme>://<host><path>
<scheme> := '*' | 'http' | 'https' | 'file' | 'ftp' | 'urn'
<host> := '*' | '*.' <any char except '/' and '*'>+
<path> := '/' <any chars>
'*
' का मतलब इस बात पर निर्भर करता है कि यह स्कीम, होस्ट या पाथ में से किस हिस्से में है. अगर स्कीम *
है, तो यह http
या https
से मैच करता है, न कि file
, ftp
या urn
से मैच करता है. अगर होस्ट सिर्फ़ *
है, तो यह किसी भी होस्ट से मेल खाता है. अगर होस्ट *._hostname_
है, तो यह तय किए गए होस्ट या उसके किसी भी सबडोमेन से मेल खाता है. पाथ सेक्शन में, हर '*
' शून्य या एक से ज़्यादा वर्णों से मैच करता है. यहां दी गई टेबल में कुछ मान्य पैटर्न दिखाए गए हैं.
पैटर्न | यह क्या करता है | मिलते-जुलते यूआरएल के उदाहरण |
---|---|---|
http://*/* | http स्कीम का इस्तेमाल करने वाले किसी भी यूआरएल से मेल खाता है | http://www.google.com/ http://example.org/foo/bar.html |
http://*/foo* | किसी भी होस्ट पर, http स्कीम का इस्तेमाल करने वाले किसी भी यूआरएल से मेल खाता है. हालांकि, इसके लिए ज़रूरी है कि पाथ /foo से शुरू हो | http://example.com/foo/bar.html http://www.google.com/foo |
https://*.google.com/foo*bar | यह https स्कीम का इस्तेमाल करने वाले किसी भी यूआरएल से मैच करता है. यह Google के होस्ट (जैसे, www.google.com, docs.google.com या google.com) पर मौजूद होता है. हालांकि, इसके लिए ज़रूरी है कि पाथ /foo से शुरू और bar पर खत्म हो | https://www.google.com/foo/baz/bar https://docs.google.com/foobar |
http://example.org/foo/bar.html | दिए गए यूआरएल से मेल खाता हो | http://example.org/foo/bar.html |
file:///foo* | /foo से शुरू होने वाले पाथ वाली किसी भी लोकल फ़ाइल से मेल खाता है | file:///foo/bar.html file:///foo |
http://127.0.0.1/* | http स्कीम का इस्तेमाल करने वाले और होस्ट 127.0.0.1 पर मौजूद किसी भी यूआरएल से मेल खाता है | http://127.0.0.1/ http://127.0.0.1/foo/bar.html |
*://mail.google.com/* | http://mail.google.com या https://mail.google.com से शुरू होने वाले किसी भी यूआरएल से मेल खाता है. | http://mail.google.com/foo/baz/bar https://mail.google.com/foobar |
urn:* | urn: से शुरू होने वाले किसी भी यूआरएल से मेल खाता है. | urn:uuid:54723bea-c94e-480e-80c8-a69846c3f582 urn:uuid:cfa40aff-07df-45b2-9f95-e023bcf4a6da |
<all_urls> | अनुमति वाली स्कीम का इस्तेमाल करने वाले किसी भी यूआरएल से मेल खाता है. (अनुमति वाली योजनाओं की सूची के लिए, इस सेक्शन की शुरुआत देखें.) | http://example.org/foo/bar.html file:///bar/baz.html |
यहां अमान्य पैटर्न मैच के कुछ उदाहरण दिए गए हैं:
गलत पैटर्न | यह खराब क्यों है |
---|---|
http://www.google.com | कोई पाथ नहीं |
http://*foo/bar | होस्ट में '*' के बाद सिर्फ़ '.' या '/' आ सकता है |
http://foo.*.bar/baz | अगर होस्ट में '*' है, तो यह पहला वर्ण होना चाहिए |
http:/bar | स्कीम सेपरेटर मौजूद नहीं है ("/" के बजाय "//" होना चाहिए) |
foo://* | स्कीम अमान्य है |
कुछ स्कीम, सभी संदर्भों में काम नहीं करते.