安裝說明

Workerman實際上是一個PHP程式包,如果你的PHP環境已經裝好,只需要把Workerman源代碼或者demo下載下來即可運行。

Composer安裝:

composer require workerman/workerman

注意
有些composer代理鏡像不全,使用以上命令composer config -g --unset repos.packagist 移除代理

windows用戶(必讀)

從workerman3.5.3版開始workerman已經可以同時支持windows和linux系統。
windows用戶需要配置下php環境變量。

===本頁面以下僅適用於Linux環境workerman,windows用戶請忽略===

Linux系統環境檢測

Linux系統可以使用以下腳本測試本機PHP環境是否滿足Workerman運行要求。
curl -Ss https://www.workerman.net/check | php

上面腳本如果全部顯示ok,則代表滿足Workerman要求,直接到官網下載例子即可運行。

如果不是全部ok,則參考下面文檔安裝缺失的擴展即可。

(注意:檢測腳本中沒有檢測event擴展,如果業務併發連接數大於1024必須安裝event擴展,並且優化Linux內核,擴展安裝方法參照下面說明)

已有PHP環境安裝缺失擴展

安裝pcntl和posix擴展:

centos系統
如果php是通過yum安裝的,則命令列運行 yum install php-process即可安裝pcntl和posix擴展。

如果安裝失敗或者php本身不是用yum安裝的請參考手冊附錄-安裝擴展一節中方法三源碼編譯安裝。

debian/ubuntu/mac os系統
參考手冊附錄-安裝擴展一節中方法三源碼編譯安裝。

安裝event擴展:

為了能支持更大的併發連接數,必須安裝event擴展,並且優化Linux內核。安裝方法如下:

centos系統

1、安裝event擴展依賴的libevent-devel包,命令列運行

yum install libevent-devel -y
# 如果無法安裝,嘗試使用下面的命令
# yum install libevent2-devel -y

2、安裝event擴展,命令列運行
(event擴展要求PHP>=5.4)

pecl install event

注意提示:Include libevent OpenSSL support [yes] : 時輸入no回車,其它直接敲回車就行。

3、運行php --ini找到並打開php.ini文件,在最後一行加入如下配置

extension=event.so

debian/ubuntu系統安裝

1、安裝event擴展依賴的libevent-dev包,命令列運行

apt-get install libevent-dev -y
# 如果無法安裝,請嘗試以下命令
# apt-get install libevent2-dev -y

2、安裝event擴展,命令列運行

pecl install event

注意提示:Include libevent OpenSSL support [yes] : 時輸入no回車,其它直接敲回車就行。

3、運行php --ini找到並打開php.ini文件,在最後一行加入如下配置

extension=event.so

mac os 系統安裝教程

mac 系統一般作為開發機,不必安裝event擴展。

全新系統安裝(全新安裝PHP+擴展)

centos系統安裝教程

1、命令列運行(此步驟包含了安裝php-cli主程序以及pcntl、posix、libevent庫及git程序)

yum install php-cli php-process git gcc php-devel php-pear libevent-devel -y

2、安裝event擴展,命令列運行
(注意:event擴展要求PHP>=5.4)

pecl install event

注意提示:Include libevent OpenSSL support [yes] : 時輸入no回車,其它直接敲回車就行。

3、運行php --ini找到並打開php.ini文件,在最後一行加入如下配置

extension=event.so

4、命令列運行(此步驟是通過github下載Workerman主程序)

git clone https://github.com/walkor/Workerman

5、參考入門指引--簡單開發實例部分寫入口文件運行。
或者從官網下載打包好的demo運行。

debian/ubuntu系統安裝教程

1、命令列運行(此步驟包含了安裝php-cli主程序、libevent庫及git程序)

apt-get install php-cli git gcc php-pear php-dev libevent-dev -y

2、安裝event擴展,命令列運行
(注意:event擴展要求PHP>=5.4)

pecl install event

注意提示:Include libevent OpenSSL support [yes] : 時輸入no回車,其它直接敲回車就行。

3、運行php --ini找到並打開php.ini文件,在最後一行加入如下配置

extension=event.so

4、命令列運行(此步驟是通過github下載Workerman主程序)

git clone https://github.com/walkor/Workerman

5、參考入門指引--簡單開發實例部分寫入口文件運行。
或者從官網下載打包好的demo運行。

mac os 系統安裝教程

方法1: mac系統自帶PHP Cli,但是可能缺少pcntl擴展。

1、參考手冊附錄-安裝擴展一節中方法三源碼編譯安裝pcntl擴展。

2、參考手冊附錄-安裝擴展一節中方法四利用phpize安裝event擴展(作為開發機此可省略)。

3、通過https://www.workerman.net/download/workermanzip 下載Workerman主程序,或者到官網下載例子運行。

方法2: 通過brew命令安裝php及對應擴展

1、命令列運行以下命令安裝brew工具(如果已經安裝過brew可以跳過此步驟)

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2、命令列運行以下命令安裝php

brew install php

3、命令列運行以下命令安裝event擴展

brew install php-event    

4、到官網下載例子運行

Event擴展說明

Event擴展不是必須的,當業務需要支撐大於1000的併發連接時,推薦安裝Event,能夠支持巨大的併發連接。如果業務併發連接比較低,例如1000以下併發連接,則可以不用安裝。

常見問題

1、如果出現如下報錯 checking for include/event2/event.h... not found,請先嘗試刪除libevent-dev(el)庫安裝libevent2-dev(el)。
centos系統:yum remove libevent-devel && yum install libevent2-devel
debian/ubuntu系統:apt-get remove libevent-dev && apt-get install libevent2-dev

2、如果出現如下報錯NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '.../event.so' - ..../event.so: undefined symbol: php_sockets_le_socket in Unknown on line 0
請更改event.so 和socket.so的加載順序,既在php.ini中將 extension=socket.so 寫在 extension=event.so 前面,讓socket擴展先加載。