当前位置:Gxlcms > PHP教程 > 1.1-php编译安装

1.1-php编译安装

时间:2021-07-01 10:21:17 帮助过:29人阅读

1. MySQL安装(同LAMP里面的安装方法)

2. php安装

wget http://cn2.php.com/distributions/php-5.4.37.tar.bz2

tar jxf php-5.4.37.tar.bz2

useradd -s /sbin/nologin php-fpm

cd php-5.4.37

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/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 --disable-ipv6 --with-curl


make && make install


3.增加php用户和用户组

useradd -s /sbin/nologing -M php-fpm

4.在源码目录下复制配置文件

cp php.ini-production /usr/local/php/etc/php.ini


5.php专属配置文件改名

mv /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf


6.拷贝启动脚本:

cp /usr/local/src/php-5.4.37/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm


chmod 755 /etc/init.d/php-fpm

chkconfig --add php-fpm

chkconfig php-fpm on

service php-fpm start


测试php配置文件是否正常

/usr/local/php/sbin/php-fpm -t

注意:不能用启动脚本加-t 如:/etc/init.d/php-fpm -t


课后答疑

php.ini 是php的全局配置文件,比如我要配置时区,配置禁止函数。

php-fpm.conf 是php-fpm 专属的配置文件,比如配置运行服务的用户,配置启动参数等,咱们视频都有讲。

php-fpm 就是一个启动二进制文件。


学习lnmp 时 也是需要 先 安装mysql php nginx ? 那mysql 和php 的安装目录是不是不能和之前冲突?还有就是 之前不是已经编译安装过mysql 和php 了,难道不能共用么?

答:lnmp顺序,只要保证 php在mysql后面就行。 mysql可以共用,php不可以,因为编译参数都不一样。 你可以指定一个和apache的php不同的目录


lamp=linux+apache+mysql+php; lnmp=Linux+nginx+mysql+php 他们的区别在于apache和nginx和php结合的模式不同,我们讲的这两个架构中,php在编译的时候以一个模块的形式和apache成为了一个整体,这种情况下我们是可以把php的安装目录/usr/local/php删除的。而lnmp中的php启动了一个服务php-fpm,这种模式相当于nginx处理php脚本时,直接把请求转发给了php-fpm,说白了就是一个代理。这个php的安装目录是不可以删除的。 这两种模式其实是可以共存的,编译配置的时候,把prefix=后面的目录改一下即可,不让它覆盖。

人气教程排行