LNMP—PHP的编译安装

    按照LNMP的顺序,我们应该先编译MySQL,再编译PHP,最后编译Nginx,因为LNMP的MySQL和LAMP的MySQL编译一样,所以我们就略过,不再阐述了具体可以看这个链接http://286577399.blog.51cto.com/10467610/1671029,

发展壮大离不开广大客户长期以来的信赖与支持,我们将始终秉承“诚信为本、服务至上”的服务理念,坚持“二合一”的优良服务模式,真诚服务每家企业,认真做好每个细节,不断完善自我,成就企业,实现共赢。行业涉及食品包装袋等,在成都网站建设全网整合营销推广、WAP手机网站、VI设计、软件开发等项目上具有丰富的设计经验。

    另外补充一个MySQL的源码网站:http://mirrors.sohu.com/mysql/

    还需要注意一个问题,那就是我们单独配置LNMP的思路是不对的,我们的思路应该也必须是LAMP+Nginx,即LANMP;而我们想当然会认为LNMP+Apache也行,但是这样的的思路是错误的,这一点需要注意一下。

    下面直接进入LNMP的PHP编译:

[root@LnmpLinux support-files]# cd /usr/local/src

    下载

[root@LnmpLinux src]# wget http://cn2.php.net/distributions/php-5.6.12.tar.bz2

    解压

[root@LnmpLinux src]# tar jxvf php-5.6.12.tar.bz2

    创建用户

[root@LnmpLinux src]# useradd -s /sbin/nologin php-fpm

    进入php目录编译

[root@LnmpLinux src]# cd php-5.6.12

[root@LnmpLinux php-5.6.12]# ./configure --prefix=/usr/local/php2 --with-config-file-path=/usr/local/php2/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --enable-zend-multibyte --disable-ipv6 --with-pear --with-curl --with-openssl


我们应该注意的问题:

    在上面编译安装过程中,有两行用“红字”标示出来,如下所示:

   --prefix=/usr/local/php2 --with-config-file-path=/usr/local/php2/etc

因为我们是在LAMP的基础上,进行LNMP的编译安装,LAMP中已经编译过PHP了,所以我们要对LNMP中的PHP的目录做一下更改,及上面编译命令中的绿字部分,有利于我们区分开来,对于此点更改下文中均会以“绿字”标示出来。

安装过程中出现的问题解决方法:

问题一:

    configure: error: jpeglib.h not found.

    [root@LnmpLinux php-5.6.12]# yum list |grep jpeg

    [root@LnmpLinux php-5.6.12]# yum install -y libjpeg-turbo-devel

    重新编译安装

问题二:

    configure: error: mcrypt.h not found. Please reinstall libmcrypt.

    需安装epel

    [root@LnmpLinux php-5.6.12]# rpm -ivh 'http://www.lishiming.net/data/p_w_upload/forum/epel-release-6-8_32.noarch.rpm'

    [root@LnmpLinux php-5.6.12]# yum list |grep mcry

    [root@LnmpLinux php-5.6.12]# yum install -y libmcrypt-devel

    重新编译安装


[root@LnmpLinux php-5.6.12]# make && make install

[root@LnmpLinux php-5.6.12]# echo $?

0

制作php全局配置文件

[root@LnmpLinux php-5.6.12]# cp php.ini-production /usr/local/php2/etc/php.ini

制作启动脚本

[root@LnmpLinux php-5.6.12]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

授予启动脚本权限

[root@LnmpLinux php-5.6.12]# chmod 755 /etc/init.d/php-fpm

加入启动进程

[root@LnmpLinux php-5.6.12]# chkconfig --add php-fpm

开机自动启动

[root@LnmpLinux php-5.6.12]# chkconfig php-fpm on

设置php-fpm的配置文件

[root@LnmpLinux php-5.6.12]# cd /usr/local/php2/etc

[root@LnmpLinux etc]# mv  php-fpm.conf.default  php-fpm.conf

检查有无语法错误

[root@LnmpLinux etc]# /usr/local/php2/sbin/php-fpm -t

启动服务

[root@LnmpLinux etc]# service php-fpm start

查看进程

[root@LnmpLinux etc]# ps aux |grep php-fpm

监听端口

[root@LnmpLinux etc]# netstat -lnp |grep php-fpm


新闻标题:LNMP—PHP的编译安装
新闻来源:http://scyanting.com/article/pgdgdj.html