A match pattern is a URL with the following structure, used to specify a group of URLs:
<scheme>://<host>/<path>
scheme: Must be one of the following, separated from the rest of the pattern using a colon followed by a double slash (://):
httphttps- A wildcard
*, which matches onlyhttporhttps file
For information on injecting content scripts into unsupported schemes, such as about: and data:, see Injecting in related frames.
host: A hostname (www.example.com). A * before the hostname to match subdomains (*.example.com), or just a wildcard *.
- If you use a wildcard in the host pattern, it must be the first or only character, and it must be followed by a period (.) or forward slash (/).
path: A URL path (/example). For host permissions, the path is required but ignored. The wildcard (/*) should be used by convention.
Extensions use match patterns in a variety of use cases, including the following:
- Injecting content script.
- Declaring host permissions that some Chrome APIs require in addition to their own permissions.
- Granting access to web-accessible resources.
- Allowing message sending and receiving using the "externally_connectable.matches" manifest key.
Special cases
"<all_urls>"- Matches any URL that starts with a permitted scheme, including any pattern listed under valid patterns. Because it affects all hosts, Chrome web store reviews for extensions that use it may take longer.
"file:///"- Allows your extension to run on local files. This pattern requires the user to manually grant access. Note that this case requires three slashes, not two.
- Localhost URLs and IP addresses
- To match any localhost port during development, use
http://localhost/*. For IP addresses, specify the address plus a wildcard in the path, as inhttp://127.0.0.1/*. You can also usehttp://*:*/*to match localhost, IP addresses, and any port. - Top Level domain match patterns
- Chrome doesn't support match patterns for top Level domains (TLD). Specify your match patterns within individual TLDs, as in
http://google.es/*andhttp://google.fr/*.
Example patterns
https://*/*orhttps://*/- Matches any URL using the
httpsscheme. https://*/foo*- Matches any URL using the
httpsscheme, on any host, with a path that starts withfoo. Examples of matches includehttps://example.com/foo/bar.htmlandhttps://www.google.com/foo. https://*.google.com/foo*bar- Matches any URL using the
httpsscheme, on a google.com host, with a path that starts withfooand ends withbar. Examples of matches includehttps://www.google.com/foo/baz/barandhttps://docs.google.com/foobar. file:///foo*- Matches any local file whose path starts with
foo. Examples of matches includefile:///foo/bar.htmlandfile:///foo. http://127.0.0.1/*orhttp://127.0.0.1/- Matches any URL that uses the
httpscheme and is on the host 127.0.0.1. Examples of matches includehttp://127.0.0.1/andhttp://127.0.0.1/foo/bar.html. http://localhost/*- Matches any localhost port.
*://mail.google.com/or*://mail.google.com/*- Matches any URL that starts with
http://mail.google.comorhttps://mail.google.com.