Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Following some nice instructions I am almost through setting up PHP to run on nginx. However, every time I try to start spawn-fcgi I get an error message

demo@desktop:/usr/bin$ sudo /etc/init.d/php-fastcgi start
spawn-fcgi: bind failed: Cannot assign requested address

My /etc/init.d/php-fastcgi startup script is:

#!/bin/bash
PHP_SCRIPT=/usr/bin/php-fastcgi
FASTCGI_USER=demo
RETVAL=0
case "$1" in
    start)
      su - $FASTCGI_USER -c $PHP_SCRIPT
      RETVAL=$?
  ;;
    stop)
      killall -9 php5-cgi
      RETVAL=$?
  ;;
    restart)
      killall -9 php5-cgi
      su - $FASTCGI_USER -c $PHP_SCRIPT
      RETVAL=$?
  ;;
    *)
      echo "Usage: php-fastcgi {start|stop|restart}"
      exit 1
  ;;
esac
exit $RETVAL
console output

which loads /usr/bin/php-fastcgi

#!/bin/sh
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 6 -u demo -f /usr/bin/php5-cgi

One thing to note is that I am running the PHP cgi as the user "demo" which is my account.

update

I manually ran the spawn-fcgi command and it worked. Strange...

sudo /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 6 -u demo -f /usr/bin/php5-cgi
share|improve this question
add comment

1 Answer

up vote 3 down vote accepted

Is something else listening on port 9000?

netstat -tnap | grep LIST grep 9000

On the other hand, I'd recommend to strace the start script to check the system calls:

sudo strace -f -o strace.output /etc/init.d/php-fastcgi start

Then take a look at the file strace.output, especially the last few lines. strace is always good to "enlighten" the way :)

Hope this helps.

share|improve this answer
    
netstat returns nothing and I think if the port was used spawn-fcgi would say something like "port already in use". I tried strace and ended up with a file thousands and thousands of lines long. O_o –  Xeoncross May 24 '10 at 2:24
    
@Xenocross: Indeed, but I've seen some misleading error messages confusing ports and address :) –  Marco Ramos May 24 '10 at 10:12
    
The netstat command should read: netstat -tnap | grep LIST | grep 9000 –  Radek Dec 19 '11 at 22:59
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.