My Lighttpd/FGCI/PHP installation sometimes has difficulties with php scripts which are really symlinks. Now, to be honest I have not fully debugged this issue yet, but sparse error messages like "
No input file specified" and blaming PHP are not really helpful when no workaround is in sight. Some said that setting
broken-scriptfilename would help, which was been introduced in 2005, but with lighttpd-1.5, the whole fast-cgi setup has been changed quite a bit and this option is not applicable any more.
To be fair, there's even a FAQ entry for this particular error message, but it was not as straightforward as it looked like:
> You forgot to add '''cgi.fix_pathinfo=1 to your php.ini''' file....tried that, with no effect.
> If open_basedir is set, make sure the requested file is below one of the directories which is specified there.check!
> If you are running PHP with different permissions than lighttpdnope.
> Make sure you did not set doc_root or userdir in php.ini, or if you have set it, make sure it has the correct value....there are different vhosts here, each having a different
server.document-rootset, but only one php.ini where I could set
doc_root. However, php.ini/user_dir value was unset - when I set it to the same value as
userdir.pathin lighttpd, at least the symlinks below the
~userdirectories were working again! Of course, one could have different values for
userdir.path(or is this a global option?), but I guess having a single
userdir.pathvalue is much more feasible than having just one