linux php源码怎么安装启动
2022-12-02 09:01:16
113
{{single.collect_count}}

linux php源码安装启动的方法:1、下载php源码并解压缩文件包;2、安装依赖,编译安装;3、进行php配置;4、设置环境变量;5、启动php测试。

Linux系统运维及项目正式上线:进入学习

本文操作环境:linux5.9.8系统、PHP7.1.4版,DELL G3电脑

linux php源码怎么安装启动?

linux下php源码安装步骤

一、下载php源码

下载地址:http://cn.php.net/downloads.php

二、安装

1、将下载的二进制包移动到/usr/local目录,解压缩文件包

tar zxvf php-7.1.4.tar.gz
登录后复制

2、进入解压的php文件夹下/usr/local/php-7.1.4,安装依赖,编译安装

yum installlibxml2libxml2-devel./configure --prefix=/usr/local/php--with-zlib --enable-zip --with-openssl --enable-fpm --enable-mbstring --with-libdir=lib64 --without-pear--disable-pharmakemake test (编译完后可以允许一下make test命令,检测编译是否有问题)make install
登录后复制

安装完成后的摘要信息:

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/Installing PHP CLI binary:/usr/local/php/bin/Installing PHP CLI man page:/usr/local/php/php/man/man1/Installing PHP FPM binary:/usr/local/php/sbin/Installing PHP FPM defconfig: /usr/local/php/etc/Installing PHP FPM man page:/usr/local/php/php/man/man8/Installing PHP FPM status page: /usr/local/php/php/php/fpm/Installing phpdbg binary: /usr/local/php/bin/Installing phpdbg man page: /usr/local/php/php/man/man1/Installing PHP CGI binary:/usr/local/php/bin/Installing PHP CGI man page:/usr/local/php/php/man/man1/Installing build environment: /usr/local/php/lib/php/build/Installing header files:/usr/local/php/include/php/Installing helper programs: /usr/local/php/bin/program: phpizeprogram: php-configInstalling man pages: /usr/local/php/php/man/man1/page: phpize.1page: php-config.1Installing PDO headers: /usr/local/php/include/php/ext/pdo/
登录后复制

3、php配置

#php的配置文件为 php.inicp /usr/local/php-7.1.4/php.ini-production /usr/local/php/lib/php.ini#使得另一种方法来管理服务:cp /usr/local/php-7.1.4/sapi/fpm/php-fpm /etc/init.d/php-fpm#添加执行权限chmod +x /etc/init.d/php-fpm #php-fpm的配置文件cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.confcp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
登录后复制

根据机器配置修改php-fpm进程数最大限制,这限制在/usr/local/php/etc/php-fpm.d/www.conf里面

使用 netstat -napo |grep "php-fpm" | wc -l 查看一下当前fastcgi进程个数,如果个数接近conf里配置的上限,就需要调高进程数。

但也不能无休止调高,可以根据服务器内存情况,可以把php-fpm子进程数调到100或以上,在4G内存的服务器上200就可以。

pm.max_children = 200pm.start_servers = 10pm.min_spare_servers = 8pm.max_spare_servers = 12
登录后复制

4、设置环境变量

vi /etc/profile
登录后复制

打开后,在文档最下方添加如下配置:

export PATH=/usr/local/php/bin:$PATH:wq!保存退出,执行如下命令,使更改生效source /etc/profile
登录后复制

5、启动php测试

#启动/etc/init.d/php-fpm start#测试phpcd /usr/local/nginx/htmlvi test.php
登录后复制

添加如下内容:

<?php echo phpinfo();?>
登录后复制

:wq!保存退出。

浏览器输入:http://10.62.32.123/test.php

如果出现:PHP Version 7.1.4 界面,显示php详细的配置的界面,说明安装正确

6、php重启、停止

php 7.1.4 源码中已经内嵌了 php-fpm,只需要在configure的时候添加编译参数即可。

关于php-fpm的编译参数有 –enable-fpm –with-fpm-user=www –with-fpm-group=www –with-libevent-dir=libevent位置。

但是,php 7.1.4 下的php-fpm 不再支持 php-fpm 以前具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用信号控制:

master进程可以理解以下信号:

SIGINT, SIGTERM 立刻终止

SIGQUIT 平滑终止

SIGUSR1 重新打开日志文件

SIGUSR2 平滑重载所有worker进程并重新载入配置和二进制模块

示例:

php-fpm 关闭:kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid`php-fpm 重启:kill -SIGUSR2 `cat /usr/local/php/var/run/php-fpm.pid`
登录后复制

查看php-fpm进程数:

ps aux | grep -c php-fpmnetstat -anpo | grep "php-cgi" | wc -lnetstat -anop | grep "php-fpm" | wc -l
登录后复制

三、附录

php编译选项相关说明:

./configure --prefix=/usr/local/php \ #指定安装目录--with-config-file-path=/usr/local/php/etc \ #指定配置文件的目录,默认在php/lib下满\--enable-fpm \启用php的fpm--enable-mbstring\ 启用多字节字符串支持--with-libdir=lib64 \--without-pear \禁用pear扩展 --disable-phar \ 禁用pear扩展的phar函数库--enable-mysqlnd \ 启用php的mysql驱动 --with-mysqli=mysqlnd \ 指定mysql--with-pdo-mysql=mysqlnd \指定mysql
登录后复制

推荐学习:《PHP视频教程

以上就是linux php源码怎么安装启动的详细内容,更多请关注php中文网其它相关文章!

回帖
全部回帖({{commentCount}})
{{item.user.nickname}} {{item.user.group_title}} {{item.friend_time}}
{{item.content}}
{{item.comment_content_show ? '取消' : '回复'}} 删除
回帖
{{reply.user.nickname}} {{reply.user.group_title}} {{reply.friend_time}}
{{reply.content}}
{{reply.comment_content_show ? '取消' : '回复'}} 删除
回帖
收起
没有更多啦~
{{commentLoading ? '加载中...' : '查看更多评论'}}