按照张宴的文档完成了nginx0.8+php5.2.13(fastcgi)+mysql5.5.3的安装,准备将nginx平滑升级。 1、备份nginx的可执行程序: [root@svr2 sbin]# cp nginx /root/nginx_old [root@svr2 sbin]# pwd /usr/local/webserver/nginx/sbin #执行升级信号 [root@svr2 sbin]# kill -USR2 `cat /usr/local/webserver/nginx/nginx.pid ` #系统会将nginx.pid进行重命名nginx.pid.oldbin [root@svr2 sbin]# ll /usr/local/webserver/nginx/ total 88 drwx------ 2 www root 4096 Aug 18 02:48 client_body_temp drwxr-xr-x 2 root root 4096 Aug 18 02:57 conf drwx------ 2 www root 4096 Aug 17 05:40 fastcgi_temp drwxr-xr-x 2 root root 4096 Aug 17 05:36 html drwxr-xr-x 2 root root 4096 Aug 18 02:56 logs -rw-r--r-- 1 root root 5 Aug 18 05:33 nginx.pid -rw-r--r-- 1 root root 5 Aug 17 06:38 nginx.pid.oldbin drwx------ 2 www root 4096 Aug 17 05:40 proxy_temp drwxr-xr-x 2 root root 4096 Aug 17 05:36 sbin drwx------ 2 www root 4096 Aug 17 05:40 scgi_temp drwx------ 2 www root 4096 Aug 17 05:40 uwsgi_temp #开始编译 [root@svr2 ~]# tar -xzf nginx-1.0.5.tar.gz [root@svr2 ~]# cd nginx-1.0.5 [root@svr2 nginx-1.0.5]# ./configure --prefix=/usr/local/webserver/nginx/ \ > --with-http_ssl_module --with-http_stub_status_module --user=www --group=www [root@svr2 nginx-1.0.5]# make && make install # [root@svr2 ~]# ps -eo pid,ppid,user,vsz,wchan,command --forest | grep nginx 4125 1 root 5884 rt_sig nginx: master process /usr/local/webserver/nginx/sbin/nginx (老) 6532 4125 www 18428 322807 \_ nginx: worker process 6533 4125 www 18836 322807 \_ nginx: worker process 6534 4125 www 18428 322807 \_ nginx: worker process 6535 4125 www 18428 322807 \_ nginx: worker process 6536 4125 www 18428 322807 \_ nginx: worker process 6537 4125 www 18836 322807 \_ nginx: worker process 6538 4125 www 18772 - \_ nginx: worker process 6539 4125 www 18772 322807 \_ nginx: worker process 7644 4125 root 5756 rt_sig \_ nginx: master process /usr/local/webserver/nginx/sbin/nginx (新) 7645 7644 www 18336 322807 \_ nginx: worker process 7646 7644 www 18300 322807 \_ nginx: worker process 7647 7644 www 18300 322807 \_ nginx: worker process 7648 7644 www 18300 322807 \_ nginx: worker process 7649 7644 www 18300 322807 \_ nginx: worker process 7650 7644 www 18300 322807 \_ nginx: worker process 7651 7644 www 18300 322807 \_ nginx: worker process 7652 7644 www 18300 322807 \_ nginx: worker process [root@svr2 ~]# cat /usr/local/webserver/nginx/nginx.pid.oldbin 4125 [root@svr2 ~]# cat /usr/local/webserver/nginx/nginx.pid 7644 #原nginx已经停掉了,现在是新的进程在跑 [root@svr2 nginx-1.0.5]# kill -WINCH 4125 [root@svr2 ~]# ps -eo pid,ppid,user,vsz,wchan,command --forest | grep nginx 9854 7677 root 3920 pipe_w \_ grep nginx 4125 1 root 5884 rt_sig nginx: master process /usr/local/webserver/nginx/sbin/nginx 7644 4125 root 5756 rt_sig \_ nginx: master process /usr/local/webserver/nginx/sbin/nginx 7645 7644 www 18336 322807 \_ nginx: worker process 7646 7644 www 18300 322807 \_ nginx: worker process 7647 7644 www 18300 322807 \_ nginx: worker process 7648 7644 www 18300 322807 \_ nginx: worker process 7649 7644 www 18300 322807 \_ nginx: worker process 7650 7644 www 18300 322807 \_ nginx: worker process 7651 7644 www 18300 322807 \_ nginx: worker process 7652 7644 www 18300 322807 \_ nginx: worker process #我重启了一下,这步应该是不用的。 [root@svr2 nginx-1.0.5]# kill -QUIT 4125 #现在只有7644这个进程在跑 [root@svr2 ~]# ps -eo pid,ppid,user,%cpu,vsz,wchan,command | grep nginx 7644 1 root 0.0 5888 rt_sig nginx: master process /usr/local/webserver/nginx/sbin/nginx 9883 7644 www 0.0 18760 322807 nginx: worker process 9884 7644 www 0.0 18432 322807 nginx: worker process 9885 7644 www 0.0 18432 322807 nginx: worker process 9886 7644 www 0.0 18432 322807 nginx: worker process 9887 7644 www 0.0 18432 322807 nginx: worker process 9888 7644 www 0.0 18432 322807 nginx: worker process 9889 7644 www 0.0 18432 322807 nginx: worker process 9890 7644 www 0.0 18432 322807 nginx: worker process 9903 7677 root 0.0 3924 pipe_w grep nginx 看下nginx的可执行文件: [root@svr2 ~]# ll /usr/local/webserver/nginx/sbin/ total 7428 -rwxr-xr-x 1 root root 3818413 Aug 18 05:39 nginx -rwxr-xr-x 1 root root 3765437 Aug 17 05:36 nginx.old #系统版本1.0.5 [root@svr2 ~]# /usr/local/webserver/nginx/sbin/nginx -v nginx: nginx version: nginx/1.0.5