编译php-fpm,nginx+php_php-fpm编译版

背景:

centos6.6_64

nginx-1.11

php5.6.22

依赖:(nginx)yum install -y gcc pcre openssl make(php)yum install -y gcc-c++ libxml2 libxml2-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel glibc glibc-devel glib2 glib2-devel

安装:tar xzf nginx-1.11.1.tar.gz

./configure --prefix=/usr/local/nginx --with-http_gzip_static_module  --with-http_stub_status_module

make && make installtar xzf php-5.6.22.tar.bz2

./configure  --prefix=/usr/local/php  --enable-fpm

make && make install

配置:

1.nginxserver {

listen       80;

server_name  localhost;

root /usr/local/nginx/html;

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

location ~ \.php$ {

root           /usr/local/nginx/html;

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

include        fastcgi_params;

}

}

# $document_root

2.php-fpm[www]

user = $poolgroup = $poo

llisten =127.0.0.1:9000

listen.backlog = 4096

pm = dynamic

pm.max_children = 32

pm.start_servers = 8

pm.min_spare_servers = 8

pm.max_spare_servers = 12

pm.max_requests = 2048

pm.status_path = /$pool_status

ping.path = /$pool_ping

ping.response = $pool_OK

access.log = /opt/logs/php/$pool.access.log

access.format = %R - %u %t %n " "  "%m %r%Q%q" " "  %s %f %{mili}d %{kilo}M %C%%

slowlog = /opt/logs/php/$pool.slow.log

request_slowlog_timeout = 5

request_terminate_timeout = 30

脚本:

1.nginxnginx=${NGINX-/opt/yingmoo/nginx/sbin/nginx}

prog=`/bin/basename $nginx`

conffile=${CONFFILE-/opt/yingmoo/nginx/conf/nginx.conf}

lockfile=${LOCKFILE-/var/lock/subsys/nginx}

pidfile=${PIDFILE-/opt/yingmoo/nginx/logs/nginx.pid}

SLEEPMSEC=${SLEEPMSEC-200000}

UPGRADEWAITLOOPS=${UPGRADEWAITLOOPS-5}

RETVAL=0

start() {

echo -n $"Starting $prog: "

daemon --pidfile=${pidfile} ${nginx} -c ${conffile}

RETVAL=$?

echo

[ $RETVAL = 0 ] && touch ${lockfile}

return $RETVAL

}

stop() {

echo -n $"Stopping $prog: "

killproc -p ${pidfile} ${prog}

RETVAL=$?

echo

[ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}

}

reload() {

echo -n $"Reloading $prog: "

killproc -p ${pidfile} ${prog} -HUP

RETVAL=$?

echo

}

upgrade() {

oldbinpidfile=${pidfile}.oldbin

configtest -q || return

echo -n $"Starting new master $prog: "

killproc -p ${pidfile} ${prog} -USR2

echo

for i in `/usr/bin/seq $UPGRADEWAITLOOPS`; do

/bin/usleep $SLEEPMSEC

if [ -f ${oldbinpidfile} -a -f ${pidfile} ]; then

echo -n $"Graceful shutdown of old $prog: "

killproc -p ${oldbinpidfile} ${prog} -QUIT

RETVAL=$?

echo

return

fi

done

echo $"Upgrade failed!"

RETVAL=1

}

configtest() {

if [ "$#" -ne 0 ] ; then

case "$1" in

-q)

FLAG=$1

;;

*)

;;

esac

shift

fi

${nginx} -t -c ${conffile} $FLAG

RETVAL=$?

return $RETVAL

}

rh_status() {

status -p ${pidfile} ${nginx}

}

# See how we were called.

case "$1" in

start)

rh_status >/dev/null 2>&1 && exit 0

start

;;

stop)

stop

;;

status)

rh_status

RETVAL=$?

;;

restart)

configtest -q || exit $RETVAL

stop

start

;;

upgrade)

rh_status >/dev/null 2>&1 || exit 0

upgrade

;;

condrestart|try-restart)

if rh_status >/dev/null 2>&1; then

stop

start

fi

;;

force-reload|reload)

reload

;;

configtest)

configtest

;;

*)

echo $"Usage: $prog {start|stop|restart|condrestart|try-restart|force-reload|upgrade|reload|status|help|configtest}"

RETVAL=2

esac

exit $RETVAL

2.php-fpmRETVAL=0

prog="php-fpm"

pidfile=${PIDFILE-/var/run/php-fpm/php-fpm.pid}

lockfile=${LOCKFILE-/var/lock/subsys/php-fpm}

daemon="/usr/local/php/sbin/php-fpm"

configfile="/usr/local/php/etc/php-fpm.conf"

start () {

echo -n $"Starting $prog: "

dir=$(dirname ${pidfile})

[ -d $dir ] || mkdir $dir

/usr/local/php/sbin/php-fpm  -g ${pidfile} -y $configfile -D

RETVAL=$?

echo

[ $RETVAL -eq 0 ] && touch ${lockfile}

}

stop () {

echo -n $"Stopping $prog: "

killproc -p ${pidfile} php-fpm

RETVAL=$?

echo

if [ $RETVAL -eq 0 ] ; then

rm -f ${lockfile} ${pidfile}

fi

}

restart () {

stop

start

}

reload () {

echo -n $"Reloading $prog: "

if ! $PHP-FPM --test ; then

RETVAL=6

echo $"not reloading due to configuration syntax error"

failure $"not reloading $prog due to configuration syntax error"

else

killproc -p ${pidfile} php-fpm -USR2

RETVAL=$?

fi

echo

}

# See how we were called.

case "$1" in

start)

start

;;

stop)

stop

;;

status)

status -p ${pidfile} php-fpm

RETVAL=$?

;;

restart)

restart

;;

reload|force-reload)

reload

;;

configtest)

/usr/sbin/php-fpm --test

RETVAL=$?

;;

condrestart|try-restart)

[ -f ${lockfile} ] && restart || :

;;

*)

echo $"Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart|try-restart|configtest}"

RETVAL=2

;;

esac

exit $RETVAL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值