When you set error_log in the php.ini file: on unix (solaris with apache at least) the file you specify must be writable by whoever your web server runs as. For example, on my system apache runs as the user nobody so I must make sure that the file I specified for error_log is owned by nobody, or world writable.
