本人對文檔里面這個樣例代碼的“bindto”不理解,這個的作用是什么。好像設(shè)置和不設(shè)置也沒有什么區(qū)別。求解答?
<?php
use Workerman\Worker;
use Workerman\Connection\AsyncTcpConnection;
require_once __DIR__ . '/../Workerman/Autoloader.php';
$worker = new Worker();
$worker->onWorkerStart = function($worker){
// 設(shè)置訪問對方主機的本地ip及端口以及ssl證書
$context_option = array(
'socket' => array(
// ip必須是本機網(wǎng)卡ip,并且能訪問對方主機,否則無效
'bindto' => '114.215.84.87:2333',
),
// ssl選項,參考http://php.net/manual/zh/context.ssl.php
'ssl' => array(
// 本地證書路徑。 必須是 PEM 格式,并且包含本地的證書及私鑰。
'local_cert' => '/your/path/to/pemfile',
// local_cert 文件的密碼。
'passphrase' => 'your_pem_passphrase',
// 是否允許自簽名證書。
'allow_self_signed' => true,
// 是否需要驗證 SSL 證書。
'verify_peer' => false
)
);
// 發(fā)起異步連接
$con = new AsyncTcpConnection('ws://echo.websocket.org:443', $context_option);
// 設(shè)置以ssl加密方式訪問
$con->transport = 'ssl';
$con->onConnect = function($con) {
$con->send('hello');
};
$con->onMessage = function($con, $data) {
echo $data;
};
$con->connect();
};
Worker::runAll();