如何通过源码在CentOS上安装PHP7.2.4并添加swoole2.1.1扩展?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1305个文字,预计阅读时间需要6分钟。
安装环境:CentOS 7.4 + PHP 7.2.4 + Swoole 2.1.1。以下为基于CentOS 7.4系统的安装步骤,以供参考。
1. 准备工作: - 下载并安装CentOS 7.4系统。 - 确保网络连接正常。
2. 安装依赖: - 更新系统源:`sudo yum update` - 安装PHP:`sudo yum install php` - 安装PHP扩展:`sudo yum install php-fpm php-mysql php-gd php-xml php-mbstring php-zip` - 安装Swoole:`sudo yum install -y epel-release && sudo yum install -y swoole`
3. 配置PHP-FPM: - 编辑`/etc/php/fpm/pool.d/www.conf`文件,修改以下配置: - `listen=/var/run/php-fpm.sock` - `pm=dynamic` - `pm.max_children=50` - `pm.start_servers=10` - `pm.min_spare_servers=5` - `pm.max_spare_servers=35` - 重启PHP-FPM服务:`sudo systemctl restart php-fpm`
4. 测试Swoole: - 创建一个名为`swoole.php`的文件,内容如下: php - 在浏览器中访问`http://your_server_ip/swoole.php`,查看Swoole版本信息。
5. 安装成功: - 至此,您已成功安装了CentOS 7.4 + PHP 7.2.4 + Swoole 2.1.1环境。
提示:如果您是新手,建议使用京东云主机进行练习安装,注册并完成新手任务后,免费赠送一个月云主机。
安装环境
centos 7.4
php 7.2.4
swoole 2.1.1
在接下来中我将使用安装有 centos7.4 系统的京东云主机来为大家演示,ps:建议大家使用京东云来练手安装,毕竟新手注册免费送一个月云主机
代码包如下所示
[root@JD ~]# pwd /root [root@JD ~]# ls mysoft work [root@JD ~]# cd mysoft/ [root@JD mysoft]# ls php-7.2.4.tar.bz2 swoole-swoole-v2.1.1.zip [root@JD mysoft]#
源码安装 php
● tar -jxvf php-7.2.4.tar.bz2 命令解压 php-7.2.4.tar.bz2 目录
● cd php-7.2.4/ 进入 php-7.2.4.tar.bz2 目录
● mkdir /usr/local/src/php7.2.4 新建 php 安装目录
● ./configure --prefix=/usr/local/src/php7.2.4 检查配置
如果报下面的错 是因为没有安装 gcc 使用 yum install gcc* 安装即可
checking for cc... no checking for gcc... no configure: error: in `/root/mysoft/php-7.2.4': configure: error: no acceptable C compiler found in $PATH See `config.log' for more details
● 如果报 error: libxml2 not found rpm -qa |grep libxml2 检查是否安装了 libxm 包
● 如果安装了 就直接 yum install libxml2-devel
● 如果没有 先 yum install libxml2 再 yum install libxml2-devel
make && make install 进行编译 时间会比较长
下面我们来测试一下 创建一个 hello.php 内容为输出 hello world!
[root@JD ~]# vim hello.php [root@JD ~]# /usr/local/src/php7.2.4/bin/php hello.php hello world! [root@JD ~]#
运行成功
改进一下 如果我们直接使用 php hello.php 系统会报错 -bash: php: command not found
vim ~/.bash_profile 如下添加 php 别名即可
export PATH alias php=/usr/local/src/php7.2.4/bin/php
别忘了再 source ~/.bash_profile 一下
现在就可以直接使用 php hello.php 运行 php 代码了
现在你可能觉得你的 php 已经安装成功了 但是你会发现一个致命问题 你找不到 php.ini 文件
[root@JD ~]# find / -name php.ini [root@JD ~]#
源码安装的话我们需要把 源码包里的 php.ini 文件拷贝到我们的安装目录
拷贝到哪里呢 这时我们可以使用命令 php -i |grep php.ini
[root@JD php-7.2.4]# php -i |grep php.ini Configuration File (php.ini) Path => /usr/local/src/php7.2.4/lib
我们可以看见需要我们拷贝到 lib 目录
使用 命令 cp php.ini-development /usr/local/src/php7.2.4/lib/php.ini
拷贝成功
至此 我们的 php 7.2.4 已经完全安装成功了
源码安装 swoole
● unzip swoole-swoole-v2.1.1.zip 解压 swoole
● cd swoole/ 进入 swoole 目录
● /usr/local/src/php7.2.4/bin/phpize 生成 configure 文件
如果报错 Cannot find autoconf. 使用命令 yum install autoconf 安装即可
● ./configure --with-php-config=/usr/local/src/php7.2.4/bin/php-config
● make && make install 进行编译
编译完成后 在 php.ini 的最后一行加上 extension=swoole.so
● php -m |grep swoole 查找 swoole 是否安装成功
[root@JD lib]# php -m |grep swoole swoole
swoole 安装成功
尝试结合 php 使用 swoole
swoole 的源码包中有很多 swoole 的 demo 例如 swoole/examples/server 目录下有一个 echo.php;
echo.php 开启了 tcp 服务并监听了 9501 端口;
netstat -anp |grep 9501 我们查看 9501 端口现在没有被占用;
[root@JD lib]# netstat -anp |grep 9501 [root@JD lib]#
php echo.php 现在我们运行 echo.php;
再次查看 9501 端口已经被 php 占用了;
[root@JD lib]# netstat -anp |grep 9501 tcp 0 0 0.0.0.0:9501 0.0.0.0:* LISTEN 27728/php
现在我们的 swoole 的一个简单的服务就被我们开启了。
以后就可以愉快的使用 swoole 进行开发了。
本文共计1305个文字,预计阅读时间需要6分钟。
安装环境:CentOS 7.4 + PHP 7.2.4 + Swoole 2.1.1。以下为基于CentOS 7.4系统的安装步骤,以供参考。
1. 准备工作: - 下载并安装CentOS 7.4系统。 - 确保网络连接正常。
2. 安装依赖: - 更新系统源:`sudo yum update` - 安装PHP:`sudo yum install php` - 安装PHP扩展:`sudo yum install php-fpm php-mysql php-gd php-xml php-mbstring php-zip` - 安装Swoole:`sudo yum install -y epel-release && sudo yum install -y swoole`
3. 配置PHP-FPM: - 编辑`/etc/php/fpm/pool.d/www.conf`文件,修改以下配置: - `listen=/var/run/php-fpm.sock` - `pm=dynamic` - `pm.max_children=50` - `pm.start_servers=10` - `pm.min_spare_servers=5` - `pm.max_spare_servers=35` - 重启PHP-FPM服务:`sudo systemctl restart php-fpm`
4. 测试Swoole: - 创建一个名为`swoole.php`的文件,内容如下: php - 在浏览器中访问`http://your_server_ip/swoole.php`,查看Swoole版本信息。
5. 安装成功: - 至此,您已成功安装了CentOS 7.4 + PHP 7.2.4 + Swoole 2.1.1环境。
提示:如果您是新手,建议使用京东云主机进行练习安装,注册并完成新手任务后,免费赠送一个月云主机。
安装环境
centos 7.4
php 7.2.4
swoole 2.1.1
在接下来中我将使用安装有 centos7.4 系统的京东云主机来为大家演示,ps:建议大家使用京东云来练手安装,毕竟新手注册免费送一个月云主机
代码包如下所示
[root@JD ~]# pwd /root [root@JD ~]# ls mysoft work [root@JD ~]# cd mysoft/ [root@JD mysoft]# ls php-7.2.4.tar.bz2 swoole-swoole-v2.1.1.zip [root@JD mysoft]#
源码安装 php
● tar -jxvf php-7.2.4.tar.bz2 命令解压 php-7.2.4.tar.bz2 目录
● cd php-7.2.4/ 进入 php-7.2.4.tar.bz2 目录
● mkdir /usr/local/src/php7.2.4 新建 php 安装目录
● ./configure --prefix=/usr/local/src/php7.2.4 检查配置
如果报下面的错 是因为没有安装 gcc 使用 yum install gcc* 安装即可
checking for cc... no checking for gcc... no configure: error: in `/root/mysoft/php-7.2.4': configure: error: no acceptable C compiler found in $PATH See `config.log' for more details
● 如果报 error: libxml2 not found rpm -qa |grep libxml2 检查是否安装了 libxm 包
● 如果安装了 就直接 yum install libxml2-devel
● 如果没有 先 yum install libxml2 再 yum install libxml2-devel
make && make install 进行编译 时间会比较长
下面我们来测试一下 创建一个 hello.php 内容为输出 hello world!
[root@JD ~]# vim hello.php [root@JD ~]# /usr/local/src/php7.2.4/bin/php hello.php hello world! [root@JD ~]#
运行成功
改进一下 如果我们直接使用 php hello.php 系统会报错 -bash: php: command not found
vim ~/.bash_profile 如下添加 php 别名即可
export PATH alias php=/usr/local/src/php7.2.4/bin/php
别忘了再 source ~/.bash_profile 一下
现在就可以直接使用 php hello.php 运行 php 代码了
现在你可能觉得你的 php 已经安装成功了 但是你会发现一个致命问题 你找不到 php.ini 文件
[root@JD ~]# find / -name php.ini [root@JD ~]#
源码安装的话我们需要把 源码包里的 php.ini 文件拷贝到我们的安装目录
拷贝到哪里呢 这时我们可以使用命令 php -i |grep php.ini
[root@JD php-7.2.4]# php -i |grep php.ini Configuration File (php.ini) Path => /usr/local/src/php7.2.4/lib
我们可以看见需要我们拷贝到 lib 目录
使用 命令 cp php.ini-development /usr/local/src/php7.2.4/lib/php.ini
拷贝成功
至此 我们的 php 7.2.4 已经完全安装成功了
源码安装 swoole
● unzip swoole-swoole-v2.1.1.zip 解压 swoole
● cd swoole/ 进入 swoole 目录
● /usr/local/src/php7.2.4/bin/phpize 生成 configure 文件
如果报错 Cannot find autoconf. 使用命令 yum install autoconf 安装即可
● ./configure --with-php-config=/usr/local/src/php7.2.4/bin/php-config
● make && make install 进行编译
编译完成后 在 php.ini 的最后一行加上 extension=swoole.so
● php -m |grep swoole 查找 swoole 是否安装成功
[root@JD lib]# php -m |grep swoole swoole
swoole 安装成功
尝试结合 php 使用 swoole
swoole 的源码包中有很多 swoole 的 demo 例如 swoole/examples/server 目录下有一个 echo.php;
echo.php 开启了 tcp 服务并监听了 9501 端口;
netstat -anp |grep 9501 我们查看 9501 端口现在没有被占用;
[root@JD lib]# netstat -anp |grep 9501 [root@JD lib]#
php echo.php 现在我们运行 echo.php;
再次查看 9501 端口已经被 php 占用了;
[root@JD lib]# netstat -anp |grep 9501 tcp 0 0 0.0.0.0:9501 0.0.0.0:* LISTEN 27728/php
现在我们的 swoole 的一个简单的服务就被我们开启了。
以后就可以愉快的使用 swoole 进行开发了。

