Recently a friend wanted me to setup a simple podcast on iTunes for him. When he asked me I though “How hard can this be?”. After all, it is just an RSS feed. I looked up a sample, wrote the basic outline and validated it on http://castfeedvalidator.com/. The document looked something like this:
<?xml version="1.0" encoding="UTF-8" ?> <rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"> <channel> <title>Name</title> <description>Why apple podcasts are terrible, awful, no good very bad things.</description> <link>https://foo.com/feed</link> <ttl>1</ttl> <atom:link href="https://foo.com/" rel="self" type="application/rss+xml" /> <itunes:author>Friend</itunes:author> <copyright>© 2016 Friend Inc.</copyright> <language>en-us</language> <itunes:category text="Education"/> <itunes:explicit>No</itunes:explicit> <itunes:image href="http://foo.com/img.png"/> </channel> </rss>
This passed every validator so I put it into itunes’ own validator and I get the almost totally unhelpful error
Can’t read your feed. Nothing more. Nothing to tell me if it was a 504, 404, parsing error, nothing. I spent ages mucking about with the file location, file name, little tweaks to the document. I was getting very frustrated at this point so I gave it a “Hail-Mary” google and went digging. It turns out that on about page 3 of a tangentally related google search someone mentions that Java doesn’t support lets encrypt ssl certs.
My whole site forces SSL using these amazing things, so I was loathe to remove it on this subdomain, but I had to give it a go. So I disabled force ssl on static.vogonjeltz.com and thank god it works.
My message to apple: Think about your users. Give us real error messages so things like this take 2 mins not 2 hours.