欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

1.1-php编译安装

程序员文章站 2022-06-17 22:16:18
...
1. MySQL安装(同LAMP里面的安装方法)

2. php安装

wget http://cn2.php.net/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=后面的目录改一下即可,不让它覆盖。

相关标签: 1.1-php编译安装