Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐:
搜索:
您的位置: Linux安全网 > Linux系统 > » 正文

vm linux下构建nginx+php的基本平台

来源: 未知 分享至:

        Nginx是目前十分流行的轻量级的web服务器的构建平台,相对于经典的apache来说,它虽然在功能上根本无法与其匹敌,但是在业务需求专一的某些领域Nginx已经取得了领先,因为在对服务质量日益关注的今天,首先要考虑的就是在原有的设备平台上做都最优化的服务提供,Nginx的发展可以说是顺应了这个潮流的发展,以其对硬件设备的低需求而脱颖而出。目前Nginx使用的是Fast-cgi技术,这样的平台和windows的IIS所使用的API一样的优秀!

 实验平台 RHEL5.4(红帽) 实验前先行设置好yum源

用到的软件

nginx-1.1.4.tar.gz

php-5.2.17-fpm-0.5.14.diff.gz(连接所用软件,是一个补丁)
php-5.2.17.tar.gz

实验的过程:

一、Nginx安装配置

[root@localhost ~]# yum -y install prce*
[root@localhost ~]# tar zxvf nginx-1.1.4.tar.gz

[root@localhost nginx-1.1.4]# ./configure --prefix=/usr/local/nginx

[root@localhost nginx-1.1.4]# make && make install

[root@localhost ~]# cd /usr/local/nginx/html/
[root@localhost html]# vi index.php
<?php
phpinfo();
?>
[root@localhost html]# cd ../conf/
[root@localhost conf]# vi nginx.conf  (红色字体为本机地址和网页的路径)

        location ~ \.php$ {
            root           html;
            fastcgi_pass   192.168.1.192:9000;   //
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;
            include        fastcgi_params;
[root@localhost conf]# cd /etc/init.d/
[root@localhost init.d]# vi nginxd (书写启动的shell)

#!/bin/bash
#Author ethnicity(Just a check of others)
#Time 2011-9-24
nginxd=/usr/local/nginx/sbin/nginx
nginx_config=/usr/local/nginx/conf/nginx.conf
nginx_pid=/usr/local/nginx/logs/nginx.pid

RETVAL=0
prog="nginx"

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

[ -x $nginxd ] || exit 0


# Start nginx daemons functions.
start() {

if [ -e $nginx_pid ];then
   echo "nginx already running...."
   exit 1
fi

 echo -n $"Starting $prog: "
   daemon $nginxd -c ${nginx_config}
   RETVAL=$?
   echo
   [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
   return $RETVAL

}


# Stop nginx daemons functions.
stop() {
        echo -n $"Stopping $prog: "
        killproc $nginxd
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid
}

# reload nginx service functions.
reload() {

    echo -n $"Reloading $prog: "
    #kill -HUP `cat ${nginx_pid}`
    killproc $nginxd -HUP
    RETVAL=$?
    echo

}

# See how we were called.
case "$1" in
start)
        start
        ;;

stop)
        stop

        ;;

reload)
        reload
        ;;

restart)
        stop
        start
        ;;

status)
        status $prog
        RETVAL=$?
        ;;
*)
        echo $"Usage: $prog {start|stop|restart|reload|status|help}"
        exit 1
esac

exit $RETVAL

[root@localhost init.d]# chkconfig --add nginxd

[root@localhost init.d]# chkconfig nginxd on

[root@localhost ~]# service nginxd  restart
Stopping nginx:                                            [  OK  ]
Starting nginx:                                            [  OK  ]

二、php的相关配置

[root@localhost ~]# tar zxvf php-5.2.17.tar.gz

[root@localhost ~]# gzip -cd php-5.2.17-fpm-0.5.14.diff.gz |patch -d php-5.2.17 -p1   //打补丁的步骤

[root@localhost php-5.2.17]# ./configure --prefix=/usr/local/php-5.2.17 --enable-fastcgi --enable-fpm

[root@localhost php-5.2.17]# make && make install
[root@localhost ~]# cd /usr/local/php-5.2.17/etc/
[root@localhost etc]# vi php-fpm.conf (找到修改如下的语句)

 <value name="listen_address">192.168.1.192:9000</value>   //本机的实际IP

                        Unix user of processes                        <value name="user">nobody</value>                       

                        Unix group of processes                        <value name="group">nobody</value>

<value name="allowed_clients">192.168.1.192</value>  //此IP就是Nginx主机的IP,这里是安装在同一台机器上,所以采用相同ip

[root@localhost etc]# cd ~/php-5.2.17
[root@localhost php-5.2.17]# cp php.ini-recommended /usr/local/lib/php.ini (设置php的主配置文件)

[root@localhost sbin]# ./php-fpm restart(开启监控的功能)
Shutting down php_fpm  done
Starting php_fpm . done

三、测试的部分

[root@localhost ~]# /etc/init.d/nginxd restart
Stopping nginx:                                            [  OK  ]
Starting nginx:                                            [  OK  ]
[root@localhost ~]# /usr/local/php-5.2.17/sbin/php-fpm restart
Shutting down php_fpm . done
Starting php_fpm  done
在IE地址栏里输入http://192.168.1.192/index.php  即可以出现php那个经典的测试网页了!

这里是Nginx和php结合的一个测试,接下来要加入动态的部分,在后续的实验中会实现!


 


Tags:
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史