Linux-rhel6.4 编译安装PHP,Nginx与php连接
admin
2023-03-23 05:41:04
0


确定依赖包安装

gcc gcc-c++ libxml2 libxml2-devel bzip2 bzip2-devel libmcrypt libmcrypt-devel openssl openssl-devel libcurl-devel libjpeg-devel libpng-devel freetype-devel readline readline-devel libxslt-devel perl perl-devel psmisc.x86_64 recode recode-devel libtidy libtidy-devel  

若没安装,挂载系统镜像,从Packages文件夹里面找到安装包安装,或者有yum源的话可直接yum install安装。


可利用镜像自己制作本地yum源:http://kurol.blog.51cto.com/11433546/1927721


从官网获取,编译安装

[root@kurolz ~]# wget http://de2.php.net/get/php-5.5.38.tar.gz/from/this/mirror 
[root@kurolz ~]# tar -zxvf php-5.5.38.tar.gz
[root@kurolz php-5.5.38]# ./configure --prefix=/usr/local/php-5.5.0 --with-config-file-path=/usr/local/php-5.5.0/etc --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local --with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64

......
creating main/internal_functions_cli.c
+--------------------------------------------------------------------+
| License:                                                           |
| This software is subject to the PHP License, available in this     |
| distribution in the file LICENSE.  By continuing this installation |
| process, you are bound by the terms of this license agreement.     |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point.                            |
+--------------------------------------------------------------------+
Thank you for using PHP.
config.status: creating php5.spec
config.status: creating main/build-defs.h
config.status: creating scripts/phpize
config.status: creating scripts/man1/phpize.1
config.status: creating scripts/php-config
config.status: creating scripts/man1/php-config.1
config.status: creating sapi/cli/php.1
config.status: creating sapi/fpm/php-fpm.conf
config.status: creating sapi/fpm/init.d.php-fpm
config.status: creating sapi/fpm/php-fpm.service
config.status: creating sapi/fpm/php-fpm.8
config.status: creating sapi/fpm/status.html
config.status: creating sapi/cgi/php-cgi.1
config.status: creating ext/phar/phar.1
config.status: creating ext/phar/phar.phar.1
config.status: creating main/php_config.h
config.status: executing default commands

[root@kurolz ~]# make
[root@kurolz ~]# make install
[root@kurolz ~]# cd php-5.5.38
[root@kurolz php-5.5.38]# cp php.ini-production /usr/local/php-5.5.0/etc/php.ini
[root@kurolz php-5.5.38]# cd /usr/local/php-5.5.0/etc/
[root@kurolz etc]# cp php-fpm.conf.default php-fpm.conf
[root@kurolz etc]# cd /usr/local/php-5.5.0/sbin
[root@kurolz sbin]# ./php-fpm


Nginx与php连接

    要点:  

        1:Nginx 默认支持 fastcgi  

        2:php编译开启模块:  

            --enable-fpm  

    连接:  

[root@kurolz ~]# vim /usr/local/nginx/conf/nginx.conf
     server {  
            listen       80;  
            server_name  localhost;  
            location / {
                root   html;
                index  index.html index.php;
            }
            .......
            location ~ \.php$ {
                root   html;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include   fastcgi_params;
            }
        }


重启nginx:

[root@kurolz ~]# cd /usr/local/nginx/sbin
[root@kurolz sbin]# ./nginx -s reload


添加php测试文件:

[root@kurolz ~]# cd /usr/local/nginx/html
[root@kurolz ~]# touch info.php
[root@kurolz ~]# vim info.php


浏览器测试:

Linux-rhel6.4 编译安装PHP,Nginx与php连接



将pid文件存于var/run中

[root@kurolz ~]# vim /usr/local/php-5.5.0/etc/php-fpm.conf
pid = run/php-fpm.pid



配置开机启动php-fpm

并可用service  php-fpm  [start | restart | stop]开启、重启、关闭

[root@kurolz ~]# vim /etc/init.d/php-fpm


将下列脚本写入/etc/init.d/php-fpm中,12-15行的路径自己修改

#!/bin/sh
       #
       # php-fpm - this script starts and stops the php-fpm daemin
       #
       # chkconfig: - 85 15
       # processname: php-fpm
       # config:      /usr/local/php/etc/php-fpm.conf
       set -e
       PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
       DESC="php-fpm daemon"
       NAME=php-fpm
       DAEMON=/usr/local/php-5.5.0/sbin/php-fpm 
       CONFIGFILE=/usr/local/php-5.5.0/etc/php-fpm.conf
       PIDFILE=/usr/local/php-5.5.0/var/run/php-fpm.pid
       SCRIPTNAME=/etc/init.d/php-fpm
       
       # If the daemon file is not found, terminate the script.
       test -x $DAEMON || exit 0
       d_start(){
           $DAEMON -y $CONFIGFILE || echo -n " already running"
       }
       d_stop(){
           kill -QUIT `cat $PIDFILE` || echo -n " no running"
       }
       d_reload(){
           kill -HUP `cat $PIDFILE` || echo -n " could not reload"
       }
       case "$1" in
           start)
               echo -n "Starting $DESC: $NAME"
               d_start
               echo "."
               ;;
           stop)
               echo -n "Stopping $DESC: $NAME"
               d_stop
               echo "."
               ;;
           reload)
               echo -n "Reloading $DESC configuration..."
               d_reload
               echo "Reloaded."
               ;;
           restart)
               echo -n "Restarting $DESC: $NAME"
               d_stop
               # Sleep for two seconds before starting again, this should give the nginx daemon some time to perform a graceful stop
               sleep 2
               d_start
               echo "."
               ;;
           *)
               echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload)" >&2
               exit 3
               ;;
       esac
       exit 0


赋予php-fpm任何用户可执行权限

[root@kurolz ~]# chmod a+w /etc/init.d/php-fpm


设置开机启动

[root@kurolz ~]# chkconfig php-fpm on


相关内容

热门资讯

越南籍船舶南海遇险沉没,中方已... 据凤凰卫视报道,一艘越南船舶7月24日夜间在越南庆和以东220海里附近遇险沉没,船上共62名越南籍人...
李权哲占座、蒙面、装死:娱乐圈... 你买了一张高铁一等座的票,找到自己的位置,18A。有人坐着。你拿出手机看了眼购票记录——没错,18A...
杭州景区咖啡店闯入1条幼蛇,仅... 夏天气温高、湿度大,蛇类活动进入高峰期,千万别被“小蛇无害”的刻板印象骗了!有些幼蛇看着迷你可爱,实...
AI开源公开信签署企业增至50... IT之家 7 月 26 日消息,英伟达、微软、IBM、Meta 等 25 家美国科技企业本周(7 月...
南阳快手短视频代运营企业的服务... 在短视频平台快速发展的背景下,企业通过快手等渠道进行内容运营已成为常见的市场动作。对于希望借助短视频...
普通人该如何跟上科技发展的步伐 这个被称作科技的词汇, 听起来既有宏大之感, 又颇为遥远, 好似仅仅归属于在实验室里专心致志钻研的科...
原创 王... 菲尔兹奖名单一出,邓煜和王虹两位华人数学家共同获奖,本应是一件令人振奋的喜讯。然而,王虹那段仅3分1...
《万物》杂志首个阅读空间亮相正... 26日,由国内知名的青少年家庭科普期刊《万物》杂志与广州正佳自然科学探索中心联合打造的阅读互动空间—...
从康复机器人到脑机接口 智能康... 天津北方网讯:对脑卒中患者来说,重新抬起手臂、迈出一步,往往需要持续的康复训练,逐步恢复运动功能;对...
原创 苹... 当苹果、谷歌、斯坦福、麻省理工都无法留住一位年轻的中国AI天才时,究竟是什么力量吸引他毅然回国?为何...