I'm setting up Podcast Producer, a proprietary podcast workflow system from Apple. After wading through the setup of OpenDirectory, Kerberos, NFS, etc., I attempted to submit my first podcast. On the client console, I got
pcast[5802]: Starting file upload for 63165854-E6A9-46F6-ADE7-BF84D67568A4
pcast[5802]: Total Upload Size: 259255
pcast[5802]: Destination directory: '/Volumes/SFS/Recordings/783AEE7D-C6EA-4F7D-8D1A-17AAFF7905AA' is not mounted on client machine. Skipping.
pcast[5802]: Trying HTTPS POST of '63165854-E6A9-46F6-ADE7-BF84D67568A4.plist' to 'https://podcastserver.example.com:8170/cgi-bin/pcastupload.cgi'
pcast[5802]: Uploaded: 355/259255 bytes (0 %)
pcast[5802]: Time elapsed: 0.064978 and remaining: Infinity (seconds)
pcast[5802]: 500 "Internal Server Error"
pcast[5802]: FTP upload not configured
pcast[5802]: Unable to upload file: /Users/john/Library/Application Support/pcastuploader/metadata/63165854-E6A9-46F6-ADE7-BF84D67568A4.plist
pcast[5802]: pcastuploader quit
On the server, I got
pcastupload.cgi[9708]: /var/pcast/server/cgi.conf does not exist
Digging in further on the server, /Library/Logs/pcastserverd/apache_error.log says
[error] [client x.x.x.x] /usr/share/podcastproducer/cgi-bin/pcastupload.cgi:36:in `read_config': CGI Configuration file does not exist (CGIException)
[error] [client x.x.x.x] \tfrom /usr/share/podcastproducer/cgi-bin/pcastupload.cgi:30:in `initialize'
[error] [client x.x.x.x] \tfrom /usr/share/podcastproducer/cgi-bin/pcastupload.cgi:275:in `new'
[error] [client x.x.x.x] \tfrom /usr/share/podcastproducer/cgi-bin/pcastupload.cgi:275
[error] [client x.x.x.x] Premature end of script headers: pcastupload.cgi
Well, all pcastupload.cgi is trying to do is read the config file at /var/pcast/server/cgi.conf. A quick check showed that /var/pcast and /var/pcast/server were not readable by anyone except the owner, root.
So to fix the problem:
sudo chmod o+rx /var/pcast/
sudo chmod o+rx /var/pcast/server/
Now the podcast is successfully uploaded to the server. Of course, it's dying there now, and I'm off to investigate.