How wildcard ignore patterns work
Three lists in the crawl settings match addresses: Exclusion rules (pages Scanfully does not check), Links to ignore and Media to ignore (targets Scanfully never reports). Instead of adding every address one by one, you can add a part of an address, or a pattern with the * wildcard, that matches a whole group.
Next to each entry, the settings show how it matches: Contains or Wildcard.
What each list matches against
Section titled “What each list matches against”- Exclusion rules match the address of a page on your site. A matching page is not checked, so the links and media on it are not reported.
- Links to ignore match the address a broken link points at.
- Media to ignore match the address of a broken media file.
The Extra pages list does not take patterns: enter the full address of each page.
How matching works
Section titled “How matching works”- Without a
*(shown as Contains), an entry matches every address that contains it anywhere. A full address therefore also matches longer addresses that start with it. - With a
*(shown as Wildcard), the whole address must match the pattern. Each*matches zero or more of any character, and the parts between them must appear in that order. Without a*at the start, the address must start with the first part; without a*at the end, it must end with the last part.
Matching is case-sensitive: /Blog/ does not match /blog/.
Contains: no wildcard
Section titled “Contains: no wildcard”| Pattern | Matches | Doesn’t match |
|---|---|---|
https://example.com/page |
https://example.com/page, https://example.com/page/sub |
https://example.com/other |
example.com |
https://example.com/page, https://cdn.example.com/img.png |
https://other.com/page |
/wp-content/ |
https://mysite.com/wp-content/uploads/img.jpg |
https://mysite.com/about |
Because a full address also matches the addresses that start with it, https://example.com/page covers the pages below it too.
Ignore everything under a path
Section titled “Ignore everything under a path”Put a wildcard at the end of a path to match everything below it.
| Pattern | Matches | Doesn’t match |
|---|---|---|
https://example.com/blog/* |
https://example.com/blog/post-1, https://example.com/blog/2024/march |
https://example.com/about |
https://example.com/search* |
https://example.com/search?q=test&page=2 |
https://example.com/about |
Ignore all subdomains of a domain
Section titled “Ignore all subdomains of a domain”Put a wildcard in front of the domain to match every subdomain.
| Pattern | Matches | Doesn’t match |
|---|---|---|
*.example-cdn.com/* |
https://cdn.example-cdn.com/image.jpg, https://assets.example-cdn.com/style.css |
https://example.com/page |
*.example.com/* |
https://cdn.example.com/img.png, https://sub.example.com/page |
https://example.com/page |
Note that *.example.com/* does not match example.com itself, because there is no dot before example.com in https://example.com/page. To match the domain and its subdomains, use example.com without a wildcard.
Ignore a path on any domain
Section titled “Ignore a path on any domain”Put a wildcard at the start when the domain does not matter, but the path does.
| Pattern | Matches | Doesn’t match |
|---|---|---|
*/wp-content/* |
https://site-a.com/wp-content/uploads/img.jpg, https://site-b.com/wp-content/themes/style.css |
https://site-a.com/about |
*/tag/* |
https://example.com/tag/news/ |
https://example.com/about |
Match anything between fixed parts
Section titled “Match anything between fixed parts”A wildcard in the middle matches whatever is between the parts before and after it.
| Pattern | Matches | Doesn’t match |
|---|---|---|
https://example.com/*/image.png |
https://example.com/a/b/c/image.png |
https://example.com/a/b/style.css |
Use several wildcards
Section titled “Use several wildcards”You can use more than one * in a pattern.
| Pattern | Matches | Doesn’t match |
|---|---|---|
*.example.com/*/img/* |
https://cdn.example.com/assets/img/logo.png |
https://cdn.example.com/assets/css/style.css |
Match everything
Section titled “Match everything”A single * matches every address. In Exclusion rules that leaves nothing to check, so use it with care.
When to use patterns
Section titled “When to use patterns”Patterns help when many reports follow the same structure: a CDN or embed provider that blocks crawlers, a folder of old downloads, tracking addresses, tag or search pages you don’t want checked. They keep the report focused on what you want to fix.
Scanfully already leaves out some addresses by itself, such as links to Facebook, Instagram and LinkedIn. See How Scanfully detects broken links.
