Linux环境下安装
Linux操作系统通常都有自己的包管理软件(Ubuntu的apt-get,CentOS的yum,Mac OSX的HomeBrew等),因此一般情况下可以通过这些包管理软件直接安装PHP。但是这样安装的PHP不太适用于运行Swoole,因此本章将介绍如何通过源码编译安装。
编译环境
想要编译安装PHP首先需要安装对应的编译工具。 Ubuntu上使用如下命令安装编译工具和依赖包:
sudo apt-get install \
build-essential \
gcc \
g++ \
autoconf \
libiconv-hook-dev \
libmcrypt-dev \
libxml2-dev \
libmysqlclient-dev \
libcurl4-openssl-dev \
libjpeg8-dev \
libpng12-dev \
libfreetype6-dev \
PHP安装
PHP下载地址 在这里挑选你想用的版本即可。下载源码包后,解压至本地任意目录(保证读写权限)。
使用如下命令编译安装PHP:
cd php-5.6.22/
./configure --prefix=/usr/local/php \
--with-config-file-path=/etc/php \
--enable-fpm \
--enable-pcntl \
--enable-mysqlnd \
--enable-opcache \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-shmop \
--enable-zip \
--enable-soap \
--enable-xml \
--enable-mbstring \
--disable-rpath \
--disable-debug \
--disable-fileinfo \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-pcre-regex \
--with-iconv \
--with-zlib \
--with-mcrypt \
--with-gd \
--with-openssl \
--with-mhash \
--with-xmlrpc \
--with-curl \
--with-imap-ssl
sudo make
sudo make install
sudo mkdir /etc/php
sudo cp php.ini-development /etc/php/php.ini
注意,以上PHP编译选项根据实际情况可调整。
另外,还需要将PHP的可执行目录添加到环境变量中。 使用Vim/Sublime打开~/.bashrc,在末尾添加如下内容:
export PATH=/usr/local/php/bin:$PATHexport PATH=/usr/local/php/sbin:$PATH
保存后,终端输入命令:
source ~/.bashrc
此时即可通过php --version查看php版本。
Mac环境下安装
Mac系统自带PHP,但是Mac上对于OpenSSL的相关功能做了一些限制,使用了一个Secure Transport来取代OpenSSL。因此仍然建议重新编译安装PHP环境。
安装OpenSSL
Mac原装的0.9.8版本的OpenSSL使用的时候会有些Warning,反正我看不惯……
安装命令:
brew install openssl
安装之后,还需要链接新的openssl到环境变量中。
brew link --force openssl
安装Curl
Mac系统原装的Curl默认使用了Secure Transport,导致通过option函数设置的证书全部无效。果断重新安装之。
brew install curl --with-openssl && brew link curl --force
安装PHP
PHP官网上下载某个版本的PHP(我选择的是5.6.22),使用如下命令编译安装。
cd /path/to/php/
./configure
--prefix=/usr/local/php
--with-config-file-path=/etc/php
--with-openssl=/usr/local/Cellar/openssl/1.0.2g/
--with-curl=/usr/local/Cellar/curl/7.48.0/
make && make install
这里我仅列出两个需要特殊设置的选项with-openssl和with-curl。 安装完成后,执行如下命令:
sudo cp /usr/local/php/bin/php /usr/bin/
sudo cp /usr/local/php/bin/phar* /usr/bin/
sudo cp /usr/local/php/bin/php-config /usr/bin/
sudo cp /usr/local/php/bin/phpize /usr/bin/
随后,设置php.ini
sudo mkdir /etc/php
sudo cp php.ini.development /etc/php/php.ini
Swoole扩展安装
Swoole扩展下载地址 解压源码至任意目录,执行如下命令:
cd swoole-src-swoole-1.7.6-stable/
phpize
./configure
sudo make
sudo make installswoole的./configure有很多额外参数,可以通过./configure --help命令查看,这里均选择默认项)
安装完成后,进入/etc/php目录下,打开php.ini文件,在其中加上如下一句:
extension=swoole.so
随后在终端中输入命令php -m查看扩展安装情况。如果在列出的扩展中看到了swoole,则说明安装成功。