(Posted on behalf of the OP).
It does seem to have been a permissions issue. It seems that Apache may be treated a bit differently than other users? Even though the standard permissions would allow any user to access the PhantomJS application, apache still was unable.
Anyone with similar issues should read through this question and the answers.
Here is my slightly adapted solution for my specific case (on the Linux server). Edit your sudoers file (/etc/sudoers) to include the following line:
apache ALL=NOPASSWD: /usr/bin/phantomjs
I did this with emacs, (C-x C-q to enable editing of read-only file). I didn't seem to have any issues with that, but I guess using something called visudo is recommended for editing sudoers. Emacs worked for me, but you should look it up.
This gave the apache user explicit access to the PhantomJS app by giving it sudo access, limited to only the PhantomJS app.