John VanDyk has been innovating with information technology for more than 20 years. Read more...
Permissions fix for Podcast Producer
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: Starting file upload for 63165854-E6A9-46F6-ADE7-BF84D67568A4
pcast: Total Upload Size: 259255
pcast: Destination directory: '/Volumes/SFS/Recordings/783AEE7D-C6EA-4F7D-8D1A-17AAFF7905AA' is not mounted on client machine. Skipping.
pcast: Trying HTTPS POST of '63165854-E6A9-46F6-ADE7-BF84D67568A4.plist' to 'https://podcastserver.example.com:8170/cgi-bin/pcastupload.cgi'
pcast: Uploaded: 355/259255 bytes (0 %)
pcast: Time elapsed: 0.064978 and remaining: Infinity (seconds)
pcast: 500 "Internal Server Error"
pcast: FTP upload not configured
pcast: Unable to upload file: /Users/john/Library/Application Support/pcastuploader/metadata/63165854-E6A9-46F6-ADE7-BF84D67568A4.plist
pcast: pcastuploader quit
On the server, I got
pcastupload.cgi: /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.