《LNMP基于FastCGI实现NginxPHPMySQL的分离linux服务器应用 电脑资料》由会员分享,可在线阅读,更多相关《LNMP基于FastCGI实现NginxPHPMySQL的分离linux服务器应用 电脑资料(7页珍藏版)》请在金锄头文库上搜索。
1、LNMP基于FastCGI实现Nginx,PHP,MySQL的分离linux服务器应用 电脑资料 平时安装LNMP是把它们安装到同一台机器上,我想这个对大家来说丝毫没有挑战,下面我们实现把他们剥离到不同的机器上,让各个服务器直接分担原来的压力,也可以增加节点实现负载均衡,如:多增加一台php,让两台机器轮询的编译php,也可以在增加一台nginx,实现dns的轮询负载均衡, 规划:nginx:172.16.1.1 php(FASTCGI):172.16.1.2 mysql:172.16.1.3 环境:RedHat5.8 32位,yum可以正常使用,开发包组Development Tools D。
2、evelopment Libraries X Software Development已经安装好,如果没有请先安装。SElinux确保已经关闭,iptables先关闭之。 操作步骤: 一.在172.16.1.1编译安装nginx 1.先安装pcre-devel,nginx的rewrite功能依赖pcre提供的库。 # yum -y install pcre-devel 2.为nginx建立用户,实现安全运行,指定uid的原因是为了与php通过nfs共享时权限方便 # groupadd -r -g 5000 nginx # useradd -r -g nginx -u 5000 nginx 3.。
3、下载并编译安装nginx # wget .nginx/download/nginx-1.2.4.tar.gz # tar xvf nginx-1.2.4.tar.gz # cd nginx-1.2.4 #./configure -prefix=/usr -sbin-path=/usr/sbin/nginx -conf-path=/etc/nginx/nginx.conf -error-log-path=/var/log/nginx/error.log -log-path=/var/log/nginx/aess.log -pid-path=/var/run/nginx/nginx.pid -lo。
4、ck-path=/var/lock/nginx.lock -user=nginx -group=nginx -with-_ssl_module -with-_flv_module -with-_stub_status_module -with-_gzip_static_module -client-body-temp-path=/var/tmp/nginx/client/ -proxy-temp-path=/var/tmp/nginx/proxy/ -fastcgi-temp-path=/var/tmp/nginx/fcgi/ -uwsgi-temp-path=/var/tmp/nginx/u。
5、wsgi -scgi-temp-path=/var/tmp/nginx/scgi -with-pcre #各个选项意思就不讲解了,如果需要理解,请找google吧 # make & make install 4.为nginx提供SysV init脚本 新建文件/etc/rc.d/init.d/nginx,内容如下: #!/bin/sh # # nginx - this script. starts and stops the nginx daemon # # chkconfig: - 85 15 # description: Nginx is an (S) server, (S) revers。
6、e # proxy and IMAP/POP3 proxy server # processname: nginx # config: /etc/nginx/nginx.conf # config: /etc/sysconfig/nginx # pidfile: /var/run/nginx.pid # Source function library. . /etc/rc.d/init.d/functions # Source working configuration. . /etc/sysconfig/work # Check that working is up. $NETWORKING。
7、 = no & exit 0 nginx=/usr/sbin/nginx prog=$(basename $nginx) NGINX_CONF_FILE=/etc/nginx/nginx.conf -f /etc/sysconfig/nginx & . /etc/sysconfig/nginx lockfile=/var/lock/subsys/nginx make_dirs() # make required directories user=nginx -V 2&1 | grep configure arguments: | sed s/*-user=( *).*/1/g - option。
8、s=$nginx -V 2&1 | grep configure arguments: for opt in $options; do if echo $opt | grep .*-temp-path ; then value=echo $opt | cut -d = -f 2 if ! -d $value ; then # echo creating $value mkdir -p $value & chown -R $user $value fi fi done start() -x $nginx | exit 5 -f $NGINX_CONF_FILE | exit 6 make_dir。
9、s echo -n $Starting $prog: daemon $nginx -c $NGINX_CONF_FILE retval=$? echo $retval -eq 0 & touch $lockfile return $retval stop() echo -n $Stopping $prog: killproc $prog -QUIT retval=$? echo $retval -eq 0 & rm -f $lockfile return $retval restart() configtest | return $? stop sleep 1 start reload() c。
10、onfigtest | return $? echo -n $Reloading $prog: killproc $nginx -HUP RETVAL=$? echo force_reload() restart configtest() $nginx -t -c $NGINX_CONF_FILE rh_status() status $prog rh_status_q() rh_status /dev/null 2&1 case $1 in start) rh_status_q & exit 0 $1 ; stop) rh_status_q | exit 0 $1 ; restart|con。
11、figtest) $1 ; reload) rh_status_q | exit 7 $1 ; force-reload) force_reload ; status) rh_status ; condrestart|try-restart) rh_status_q | exit 0 ; *) echo $Usage: $0 start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest exit 2 esac 为此脚本赋予执行权限: # chmod +x /etc/rc.d/init.d/nginx 添加至服务列表,并让其开机自动启动: # chkconfig -add nginx # chkconfig nginx on 启动服务并测试 # service nginx start 直接访问172.16.1.1查看是否有nginx的欢迎信息,如果有代表nginx安装一切正常, 模板,内容仅供参考。