This page is for publishers wishing to block wherever.audio from accessing their content.
wherever.audio assumes that if a publisher posts an RSS feed with publicly accessible links to their audio files and images, then the publisher wants this content to be available in podcast player software. This is how podcasting and all podcast players work.
That said, some publishers may not want their content appearing in specific applications or platforms.
Acknowledging this, we offer instructions below for how to block content from appearing in wherever.audio.
wherever.audio accesses published content in the following ways:
The rest of this document describes methods for blocking each type of access.
wherever.audio is an HTML and javascript application that gets delivered statically and runs in the end user’s browser.
As a result, with narrow exceptions covered below, there is no middleman between the user and the publisher’s content server:
----------------- -----------------
| | RSS feeds, images, audio | |
| javascript in | ----------------------> | publisher |
| users's Web | <---------------------- | server |
| browser | | |
| | -----------------
-----------------
Like all Web applications, wherever.audio sends a Referer header with every request. For wherever.audio the Referer looks like this:
Referer: https://wherever.audio/
Blocking this Referer string will block access by wherever.audio.
wherever.audio respects the
podcast:block
tag. It will block access if the id wherever.audio
is present, like this:
<podcast:block id="wherever.audio">yes</podcast:block>
wherever.audio accesses publisher feeds via Cross-Origin Resource Sharing (CORS) requests.
In order for CORS requests to succeed, publishers must set specific HTTP headers that enable Web-sharing. Many publishers fail to do this, more due to oversight than intent in our experience.
How can publishers overlook these headers and still grow an audience? Most podcast apps run in iOS and Android, where they can sidestep CORS enforcement. In doing so, they gain a significant advantage over pure Web-based applications.
In order to create a level playing field and good user experience, wherever.audio falls back to a proxy system when CORS requests fail:
----------------- ----------------- -----------------
| | RSS | | RSS | |
| javascript in | ------------> | proxy | ------------> | publisher |
| users's Web | <------------ | server | <------------ | server |
| browser | | | | |
| | ----------------- -----------------
-----------------
Publishers whose true intent is to block Web-sharing, can block access using any of the methods that block direct requests covered in the previous section.
The proxy also sets a
User-Agent
header which can be used for blocking. Its value is
User-Agent: Wherever-Corsica/x.y.z
where x, y, and z are numbers indicating the software version.
wherever.audio’s search is powered by The Podcast Index, which is imported weekly.
----------------- ----------------- -----------------
| | search results | | weekly | |
| javascript in | ------------> | search | ingest | podcastindex |
| users's Web | <------------ | server | <------------ | export |
| browser | | | | |
| | ----------------- -----------------
-----------------
To block feeds from showing up in search result listings, we recommend blocking them from the Index. More information on Index blocklisting can be found at this GitHub page.
wherever.audio’s Quick Picks section offers composite feeds made up of episodes from different shows. To block content from appearing in this section, block User-Agents matching
User-Agent: Wherever-Marquee/x.y.z
where x, y, and z are numbers indicating the software version.
Or add the following tag
<podcast:block id="marquee.wherever.audio">yes</podcast:block>
where.audio generates chapter summaries for popular podcasts. These appear on the playback page below the show art during playback.
These may be blocked by supplying your own chapter summaries using the podcast.chapters tag, which is always favored when present.
Auto Chapters may also be suppressed by blocking User-Agents matching
User-Agent: Wherever-Scribe/x.y.z
where x, y, and z are numbers indicating the software version.