패턴 일치

호스트 권한콘텐츠 스크립트 일치는 일치로 정의된 URL 집합을 기반으로 합니다. 학습합니다. 일치 패턴은 기본적으로 허용되는 스키마 (http, https, file 또는 ftp('*' 포함 가능) 있습니다. 특수 패턴 <all_urls>은 다음과 일치합니다. 허용되는 스키마로 시작하는 모든 URL 각 일치 패턴은 세 부분으로 구성됩니다.

  • scheme(예: http, file 또는 *)

    참고: file URL에 대한 액세스는 자동으로 이루어지지 않습니다. 사용자는 확장 프로그램 관리 페이지를 방문하여 요청하는 각 확장 프로그램에 대해 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;

'*'의 의미 스키마, 호스트 또는 경로 중 어느 부분에 있는지에 따라 다릅니다. 만약 scheme*이면 http 또는 https와 일치하고 file, ftp, urn와는 일치하지 않습니다. 만약 host*이며 모든 호스트와 일치합니다. 호스트*._hostname_이면 모든 하위 도메인에 대한 액세스를 제공합니다. path 섹션에 각 '*' 0개 이상과 일치 있습니다. 다음 표에서는 몇 가지 유효한 패턴을 보여줍니다.

패턴기능일치하는 URL의 예
http://*/*http 스키마를 사용하는 모든 URL과 일치합니다.http://www.google.com/
http://example.org/foo/bar.html
http://*/foo*경로가 /foo로 시작하는 모든 호스트에서 http 스키마를 사용하는 모든 URL과 일치합니다.http://example.com/foo/bar.html
http://www.google.com/foo
https://*.google.com/foo*barhttps 스키마를 사용하고, 경로가 /foo로 시작하고 bar로 끝나기만 하면 google.com 호스트 (예: www.google.com, docs.google.com, google.com)에 있는 모든 URL과 일치합니다.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
file:///foo
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
file:///bar/baz.html

다음은 잘못된 패턴 일치의 예입니다.

잘못된 패턴문제가 있는 이유
http://www.google.com경로 없음
http://*foo/bar'*' host 뒤에는 '.'만 올 수 있습니다. 또는 '/'
http://foo.*.bar/baz '*'인 경우 호스트에 있는 경우 첫 번째 문자여야 합니다.
http:/barscheme 구분자 누락('/'은 '//')이어야 합니다.
foo://*잘못된 스키마

일부 스킴은 일부 컨텍스트에서 지원되지 않습니다.