When installing the combo php5-fpm together with Nginx or Apache, you might run into this error:
[error] 4942#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 127.0.0.1, server: example.com, request: “GET /phpinfo.php HTTP/1.1”, upstream: “fastcgi://127.0.0.1:9000”, host: “example.com:80”
This is actually not an nginx error but a php-error. Nginx tries to contact php5-fpm, but fails in doing so. This is because it’s probably not running, or because the configuration is wrong.
Check if it’s running
To troubleshoot this, test if fpm listens on 9000. You can do this with telnet.
telnet 127.0.0.1 9000
sudo netstat -tlpn | grep :9000
Telnet should return “Connected to 127.0.0.1”
Netstat should return a line starting with “tcp” and ending with “LISTEN”
If it doesn’t return anything or if it returns an error, it’s because fpm is not listening on port 9000. To solve this:
sudo gedit /etc/php5/fpm/pool.d edit
edit the line that says “listen = ” to:
listen = 9000
Then restart fpm:
sudo /etc/init.d/php5-fpm restart
You don’t even have to restart apache or nginx. It should work right away.