參考手冊里的text協(xié)議,里面說明的文件?start_text_gateway.php
stream_socket_server(): unable to connect to tcp://45.92.08.22:1238 (Cannot assign requested address) in file /home/www/chaobiao.dazongqiba.top/vendor/workerman/workerman/Worker.php on line 2178
我是直接在網上下載的GatewayWorker文件夾,我是在Event.php文件做邏輯判斷的,其次就是修改了start_businessworker和start_gateway的服務注冊地址為0.0.0.0:1238,start_register的text協(xié)議為Linux服務器的ip。默認的啟動文件start.php的代碼:
ini_set('display_errors', 'on');
use Workerman\Worker;
if(strpos(strtolower(PHP_OS), 'win') === 0)
{
exit("start.php not support windows, please use start_for_win.bat\n");
}
// 檢查擴展
if(!extension_loaded('pcntl'))
{
exit("Please install pcntl extension. See http://doc3.workerman.net/appe ... .html\n");
}
if(!extension_loaded('posix'))
{
exit("Please install posix extension. See http://doc3.workerman.net/appe ... .html\n");
}
// 標記是全局啟動
define('GLOBAL_START', 1);
require_once __DIR__ . '/vendor/autoload.php';
// 加載所有Applications//start.php,以便啟動所有服務
foreach(glob(__DIR__.'/Applications//start*.php') as $start_file)
{
require_once $start_file;
}
// 運行所有服務
Worker::runAll();
/*
use \Workerman\Worker;
use \GatewayWorker\Gateway;
use \Workerman\Autoloader;
require_once __DIR__ . '/../../vendor/workerman/workerman/Autoloader.php';
Autoloader::setRootPath(__DIR__);*/
use \Workerman\Worker;
use \GatewayWorker\Gateway;
use \Workerman\Autoloader;
// 自動加載類
require_once __DIR__ . '/../../vendor/autoload.php';
// #### 內部推送端口(假設當前服務器內網ip為192.168.100.100) ####
// #### 端口不能與原來start_gateway.php中一樣 ####
$internal_gateway = new Gateway("Text://172.16.0.7:7273");
$internal_gateway->name='internalGateway';
// #### 不要與原來start_gateway.php的一樣####
// #### 比原來跨度大一些,比如在原有startPort基礎上+1000 ####
$internal_gateway->startPort = 3300;
// #### 這里設置成與原start_gateway.php 一樣 ####
$internal_gateway->registerAddress = '127.0.0.1:1238';
// #### 內部推送端口設置完畢 ####
if(!defined('GLOBAL_START'))
{
Worker::runAll();
}
我改成這樣才能運行
我現在把start_businessworker.php、start_gateway.php的服務注冊地址的ip都設置為0.0.0.0,start_register.php的ip為服務器的ip,結果啟動start.php 文件的時候就報Cannot assign requested address
我是在Linux操作的,如果是127.0.0.1,會報錯SendBufferToWorker fail. The connections between Gateway and BusinessWorker are not ready??头沁叺慕o我的恢復是http://wiki.workerman.net/Error3
你那邊跑通的start_businessworker.php、start_gateway.php的服務注冊地址的ip設置為多少的?start_register.php的ip為設置多少?