Shell Script To Start FastCGI PHP Server For Nginx Web Server
Posted in Web Server
This script is tested under both FreeBSD and Linux. You need to modify paths and server port numbers.
How do I use this script
Download script
# fetch http://bash.cyberciti.biz/dl/251.sh.zip
# unzip 251.sh.zip
# mv 251.sh /usr/local/etc/rc.d/fastcgi.php
# chmod +x /usr/local/etc/rc.d/fastcgi.php
Sample nginx config - nginx.conf
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /webroot/theos.in/http$fastcgi_script_name; include fastcgi_params; }
Shell Script
#!/bin/sh # Shell Script to start / stop PHP FastCGI using lighttpd - spawn-fcgi binary file. # ------------------------------------------------------------------------- # Copyright (c) 2006 nixCraft project <http://cyberciti.biz/fb/> # This script is licensed under GNU GPL version 2.0 or above # ------------------------------------------------------------------------- # This script is part of nixCraft shell script collection (NSSC) # Visit http://bash.cyberciti.biz/ for more information. # ------------------------------------------------------------------------- PROVIDES=php-cgi LIGHTTPD_FCGI=/usr/local/bin/spawn-fcgi SERVER_IP=127.0.0.1 SERVER_PORT=9000 SERVER_USER=www SERVER_GROUP=www PHP_CGI=/usr/local/bin/php-cgi PGREP=/bin/pgrep KILLALL=/usr/bin/killall ### No editing below #### cmd=$1 pcgi_start(){ echo "Starting $PROVIDES..." $LIGHTTPD_FCGI -a $SERVER_IP -p $SERVER_PORT -u $SERVER_USER -g $SERVER_GROUP -f $PHP_CGI } pcgi_stop(){ echo "Killing $PROVIDES..." $KILLALL $PROVIDES } pcgi_restart(){ pcgi_stop pcgi_start } pcgi_status(){ $PGREP $PROVIDES > /dev/null [ $? -eq 0 ] && echo "$PROVIDES running" || echo "$PROVIDES NOT running" } pcgi_help(){ echo "Usage: $0 {start|stop|restart|status}" } case ${cmd} in [Ss][Tt][Aa][Rr][Tt]) pcgi_start;; [Ss][Tt][Oo][Pp]) pcgi_stop;; [Rr][Ee][Ss][Tt][Aa][Rr][Tt]) pcgi_restart;; [Ss][Tt][Aa][Tt][Uu][Ss]) pcgi_status 0;; *) pcgi_help ;; esac
Download - Email this to a friend - Printable version
Is your site working? Monitor Your Web Site 24/7. Get SMS alerts on server downtime! Free 30-day trial including 20 SMS!
Related Other Helpful Shell Scripts:
- Run level shell script to start Oracle 10g services on RedHat Enterprise Linux (RHAS 4)
- Apache FastCGI / mod_fastcgi PHP Script
- Shell Script To Bridge Multiple Network Interfaces on Xen host to Guests VPS
- Shell script to restart MySQL server if it is killed or not working
- Linux Firewall: Simple Shell Script To Stop and Flush All Iptables Rules
Leave a Reply
We encourage your comments, and suggestions. But please stay on topic, be polite, and avoid spam. Thank you very much for stopping by our site!
Tags: freebsd, nginx, nginx php fastcgi script, nginx start php, port numbers, server ip, server port ~ Last updated on: October 6, 2008

