× 警告!旧版文档已经暂停维护,请查看新版文档。点击前往新版文档

方法

  • 仅支持Linux,FreeBSD,MacOS,3类操作系统
  • Linux内核版本2.3.32以上
  • PHP5.3.10以上版本,包括PHP7
  • gcc4.4以上版本或者clang
  • cmake2.4+,编译为libswoole.so作为C/C++库时需要使用cmake

建议使用Ubuntu14/CentOS7或更高版本的操作系统

PHP版本依赖

  • swoole仅支持PHP5.3.10或更高版本,建议使用PHP5.4+
  • swoole不依赖php的stream、sockets、pcntl、posix、sysvmsg等扩展。PHP只需安装最基本的扩展即可

推荐使用的Linux发行版

  • CentOS6.2+
  • Ubuntu12+
  • Debian6+

ARM平台(树莓派Raspberry PI)

  • 请使用swoole-1.7.10或更高版本
  • 使用GCC交叉编译
  • 在编译Swoole时,需要手工修改Makefile去掉-O2编译参数

MIPS平台(OpenWrt路由器)

  • 请使用swoole-1.7.21或更高版本
  • 使用GCC交叉编译

CygWin环境支持(Windows系统)

swoole-1.7.7增加了对cygwin环境的支持,在Windows环境下,可以直接使用cygwin + php 来跑swoole程序。

  • 安装cygwin,并安装gcc、make、autoconf、php 4个包
  • 下载swoole源码,在cygwin-shell中进行phpize/configure/make/make install
  • 修改php.ini,加入swoole.so

cygwin模式下需要对PHP进行简化,去掉不使用的扩展,避免进程占用内存过大,导致Fork操作失败

BashOnWindows

Windows 10系统增加了Linux子系统支持,BashOnWindows环境下也可以使用swoole。安装命令

~~~apt-get install libpcre3 libpcre3-dev php5 php5-dev php5-cli php5-fpm php5-curl php5-mysql php5-intl php5-xmlrpc php5-geoip php5-mysqlnd php5-mcrypt php5-memcached php5-redis php5-tidy php5-sqlite php5-json php5-gmp php5-gd php5-readline php5-imagick pecl install swoole echo 'extension=swoole.so' >> /usr/php5/mods-available/swoole.ini cd /usr/php5/cli/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini cd /usr/php5/fpm/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini ~~~

  • BashOnWindows环境下必须关闭daemonize选项

  • 卫帅

    想用这个SWOOLE_SSL 但是提示没有这个常量,是怎么回事? 我的版本1.9.7

  • dawn

    @卫帅 文档说的很清楚了。重新编译swoole,带上enable-openssl。

  • 社会主义接盘人

    重新编译了swoole,带了enable-openssl,还是提示“ you must configure with enable-openssl