Allow access to www.bbc.co.uk/cbeebies, but not www.bbc.co.uk

I'm using OS X Parental Controls to limit what my son can do on our Mac.

He has his own user account, managed by the Parental Controls.

Under Website Restrictions, I've chosen "Allow access to only these websites". The list of websites we've set up contains http://www.bbc.co.uk/cbeebies/, which contains child-friendly content.

Unfortunately, Parental Controls ignores the /cbeebies/ path in the URL, and it allows access to any web page at http://www.bbc.co.uk/. This is a large site including news which I'd rather my son didn't have access to.

Apple have documented this behaviour in support article HT2900 (and although the article title refers to 10.5 and 10.6, this still seems to be the case in 10.8 and 10.9):

For most websites, the Internet content filter considers the domain name and not the path. For example, if http://www.example.com is added to the list, then http://pictures.example.com will be allowed, as will http://www.example.com/movies.

How can I set up my son's user account to block access to the BBC website generally, but still allow access to CBeebies?

  • My son uses Safari and the Simple Finder
  • We are currently using 10.8 but could upgrade to 10.9 (however, I've just tested and the issue persists there)
  • We are already using OpenDNS and could apply some blocking there, but I want the blocking to apply only to my son's account on this Mac, not other accounts or other machines on our network
  • I'm fairly experienced with UNIX, Apache etc. I'm wondering about setting up a local web server (eg http://localhost/cbeebies/) which would act as a proxy for the CBeebies site only, and add that URL to the Parental Controls whitelist... but before I spend the time to puzzle that out, can anyone share any relevant experience?

Solution 1:

This seems resolved in 10.11 El Capitan (and perhaps also 10.10 Yosemite... haven't tested there).

Specifically, the following now works (and is what I wanted):

  1. set "Allow access to only these websites"
  2. visit http://www.bbc.co.uk/cbeebies/ in Safari
  3. grant access
  4. access is now granted when visiting http://www.bbc.co.uk/cbeebies/ and pages with the same URL prefix, eg http://www.bbc.co.uk/cbeebies/topics
  5. access is denied to pages on the same domain with a different URL prefix, eg http://www.bbc.co.uk/, or http://www.bbc.co.uk/iplayer.

Solution 2:

You could allow www.cbeebies.com, which is what it redirects to from anywhere but the UK, and use the address www.cbeebies.com/global to access. I tested it using a UK proxy and it seems to work.