侧边栏壁纸
  • 累计撰写 71 篇文章
  • 累计创建 87 个标签
  • 累计收到 5 条评论

目 录CONTENT

文章目录

PHP安装Swoole支持DTLS协议

KunkkaWu
2020-04-02 / 0 评论 / 2 点赞 / 1,127 阅读 / 588 字 / 正在检测是否收录...
升级GCC
  1. 安装centos-release-scl
sudo yum install centos-release-scl
  1. 安装devtoolset
sudo yum install devtoolset-8-gcc*
  1. 激活对应的devtoolset
scl enable devtoolset-8 bash
  1. 查看版本
gcc -v
安装新版Openssl
  1. 下载新版Openssl
wget https://github.com/openssl/openssl/archive/OpenSSL_1_1_1-stable.zip
unzip OpenSSL_1_1_1-stable.zip
  1. 进入目录,指定安装路径,编译
./configure --prefix=/usr/local/openssl // 指定安装路径
make && make install
  1. 替换当前系统的旧版本 openssl 「先保存原来的」
mv /usr/bin/openssl /usr/bin/openssl.old
mv /usr/lib64/openssl /usr/lib64/openssl.old
mv /usr/lib64/libssl.so /usr/lib64/libssl.so.old

ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
ln -s /usr/local/openssl/lib/libssl.so /usr/lib64/libssl.so
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
ldconfig -v 
  1. 查看版本
openssl version
安装新版PHP 7.3.16
  1. 下载php7.3.16, 解压缩
wget https://www.php.net/distributions/php-7.3.16.tar.gz
tar -zxvf php-7.3.16.tar.gz
  1. 进入目录,指定安装目录编译
./configure --prefix=/usr/local/php7 --with-openssl-dir=/usr/local/openssl/ --with-openssl --enable-fpm --disable-fileinfo --with-config-file-path=/usr/local/php7/etc --with-config-file-scan-dir=/usr/local/php7/etc/php.d
  1. Make && Make Install
make && make install
  1. 配置php-fpm
cd /usr/local/php7/etc/
mv php-fpm.conf.default php-fpm.conf
cd php-fpm.d
mv www.conf.default  www.conf
  1. 配置php.ini
cd ~/php-7.3.16  #进入php包目录
cp php.ini-production  /usr/local/php7/etc/php.ini

  1. 开启php-fpm
/usr/local/php7/sbin/php-fpm
安装Swoole 4.5.0
  1. 下载新版Swoole
git clone https://github.com/swoole/swoole-src.git
  1. 进入目录编译
/usr/local/php7/bin/phpize && ./configure --with-openssl-dir=/usr/local/openssl/ --with-php-config=/usr/local/php7/bin/php-config && make && sudo make install
  1. 添加extension=swoole.so到php.ini
vi /usr/local/php7/etc/php.ini
extension=swoole.so

  1. 查看安装的swoole情况
/usr/local/php7/bin/php --ri swoole
[root@localhost swoole-src]# /usr/local/php7/bin/php --ri swoole

swoole

Swoole => enabled
Author => Swoole Team <team@swoole.com>
Version => 4.5.0-alpha
Built => Apr  2 2020 01:37:54
coroutine => enabled
epoll => enabled
eventfd => enabled
signalfd => enabled
cpu_affinity => enabled
spinlock => enabled
rwlock => enabled
openssl => OpenSSL 1.1.1d  10 Sep 2019
pcre => enabled
zlib => 1.2.7
mutex_timedlock => enabled
pthread_barrier => enabled
futex => enabled
async_redis => enabled

Directive => Local Value => Master Value
swoole.enable_coroutine => On => On
swoole.enable_library => On => On
swoole.enable_preemptive_scheduler => Off => Off
swoole.display_errors => On => On
swoole.use_shortname => On => On
swoole.unixsock_buffer_size => 8388608 => 8388608

2

评论区