মিল নিদর্শন

হোস্ট পারমিশন এবং কন্টেন্ট স্ক্রিপ্ট ম্যাচিং, ম্যাচ প্যাটার্ন দ্বারা সংজ্ঞায়িত এক সেট ইউআরএল-এর উপর ভিত্তি করে করা হয়। একটি ম্যাচ প্যাটার্ন মূলত এমন একটি ইউআরএল যা একটি অনুমোদিত স্কিম ( http , https , file , বা ftp ) দিয়ে শুরু হয় এবং যাতে ' * ' অক্ষর থাকতে পারে। বিশেষ প্যাটার্ন <all_urls> এমন যেকোনো ইউআরএল-এর সাথে মেলে যা একটি অনুমোদিত স্কিম দিয়ে শুরু হয়। প্রতিটি ম্যাচ প্যাটার্নের ৩টি অংশ থাকে:

  • স্কিম —উদাহরণস্বরূপ, http বা file বা *

    দ্রষ্টব্য: file ইউআরএল-এ প্রবেশাধিকার স্বয়ংক্রিয় নয়। ব্যবহারকারীকে অবশ্যই এক্সটেনশন ম্যানেজমেন্ট পেজে গিয়ে, অনুরোধকারী প্রতিটি এক্সটেনশনের জন্য file অ্যাক্সেসের অনুমতি দিতে হবে।
  • হোস্ট —উদাহরণস্বরূপ, www.google.com বা *.google.com বা * ; যদি স্কিমটি file হয়, তাহলে কোনো হোস্ট অংশ থাকে না।

  • পাথ —উদাহরণস্বরূপ, /* , /foo* , বা /foo/bar । পাথটি অবশ্যই একটি হোস্ট পারমিশনে উপস্থিত থাকতে হবে, কিন্তু এটিকে সর্বদা /* হিসেবে গণ্য করা হয়।

এখানে মৌলিক সিনট্যাক্সটি দেওয়া হলো:

&lt;url-pattern&gt; := &lt;scheme&gt;://&lt;host&gt;&lt;path&gt;
&lt;scheme&gt; := '*' | 'http' | 'https' | 'file' | 'ftp' | 'urn'
&lt;host&gt; := '*' | '*.' &lt;any char except '/' and '*'&gt;+
&lt;path&gt; := '/' &lt;any chars&gt;

' * ' এর অর্থ নির্ভর করে এটি স্কিম , হোস্ট , বা পাথ অংশে আছে কিনা তার উপর। যদি স্কিমটি * হয়, তাহলে এটি http বা https সাথে মেলে, file , ftp , বা urn সাথে নয় । যদি হোস্টটি শুধু * হয়, তাহলে এটি যেকোনো হোস্টের সাথে মেলে। যদি হোস্টটি *._hostname_ হয়, তাহলে এটি নির্দিষ্ট হোস্ট বা তার যেকোনো সাবডোমেইনের সাথে মেলে। পাথ অংশে, প্রতিটি ' * ' ০ বা তার বেশি সংখ্যক অক্ষরের সাথে মেলে। নিচের সারণিতে কিছু বৈধ প্যাটার্ন দেখানো হলো।

প্যাটার্ন এটা যা করে URL মেলানোর উদাহরণ
http://*/* http স্কিম ব্যবহার করে এমন যেকোনো URL-এর সাথে মেলে। http://www.google.com/
http://example.org/foo/bar.html
http://*/foo* যেকোনো হোস্টে, http স্কিম ব্যবহার করে এমন যেকোনো URL-এর সাথে মেলে, যতক্ষণ পর্যন্ত পাথটি /foo দিয়ে শুরু হয়। http://example.com/foo/bar.html
http://www.google.com/foo
https://*.google.com/foo*bar এটি https স্কিম ব্যবহার করে এমন যেকোনো URL-এর সাথে মেলে, যা google.com হোস্টে অবস্থিত (যেমন 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 নির্দিষ্ট URL এর সাথে মেলে http://example.org/foo/bar.html
file:///foo* যেকোনো স্থানীয় ফাইলের সাথে মেলে যার পাথ /foo দিয়ে শুরু হয়। file:///foo/bar.html
ফাইল:///ফু
http://127.0.0.1/* http স্কিম ব্যবহার করে এবং 127.0.0.1 হোস্টে অবস্থিত যেকোনো URL-এর সাথে মেলে। http://127.0.0.1/
http://127.0.0.1/foo/bar.html
*://mail.google.com/* http://mail.google.com বা https://mail.google.com দিয়ে শুরু হওয়া যেকোনো URL-এর সাথে মেলে। http://mail.google.com/foo/baz/bar
https://mail.google.com/foobar
urn:* urn: দিয়ে শুরু হওয়া যেকোনো URL-এর সাথে মেলে। urn:uuid:54723bea-c94e-480e-80c8-a69846c3f582
urn:uuid:cfa40aff-07df-45b2-9f95-e023bcf4a6da
<all_urls> অনুমোদিত স্কিম ব্যবহার করে এমন যেকোনো URL-এর সাথে মেলে। (অনুমোদিত স্কিমগুলির তালিকার জন্য এই বিভাগের শুরু দেখুন।) http://example.org/foo/bar.html
ফাইল:///বার/বাজ.html

এখানে ভুল প্যাটার্ন মিলের কিছু উদাহরণ দেওয়া হলো:

খারাপ অভ্যাস কেন এটি খারাপ
http://www.google.com কোন পথ নেই
http://*foo/bar হোস্টে '*' এর পরে শুধুমাত্র '.' বা '/' বসতে পারে।
http://foo.*.bar/baz হোস্টে যদি '*' থাকে, তবে সেটি অবশ্যই প্রথম অক্ষর হতে হবে।
http:/bar স্কিম বিভাজক অনুপস্থিত ("/" এর পরিবর্তে "//" হবে)
foo://* অবৈধ স্কিম

কিছু স্কিম সব প্রেক্ষাপটে সমর্থিত নয়।