国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

linux 上部署的時候沒有顯示worker listen那些值

小宇宙

php start.php start -d

Workerman start in DAEMON mode
------------------------------- WORKERMAN --------------------------------
Workerman version:3.5.17? ? ? ? ? PHP version:7.0.19
-------------------------------- WORKERS ---------------------------------
proto? ?user? ? ? ? ? ? worker? ? ? ? ? listen? ? ? ? ? processes? ? status
Input "php start.php stop" to stop. Start success.

3488 4 0
4個回答

phpcreeper

方便的話,貼下完整的 start .php 內(nèi)容。

  • 小宇宙 2019-01-17

    大佬,這個問題我解決了,是因為foreach(glob(__DIR__ .'/run/start*.php') as $start_file) 這里的路徑錯了,現(xiàn)在有個新問題,我在js里面new WebSocket('ws://127.0.0.1:8282')IP127.0.0.1的時候會報WebSocket connection to 'ws://127.0.0.1:8282/' failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED,但是如果改成線上的IP地址就可以,這是我start_gateway.php的代碼
    use Workerman\Worker;
    use Workerman\WebServer;
    use GatewayWorker\Gateway;
    use GatewayWorker\BusinessWorker;
    use Workerman\Autoloader;

    // 自動加載類
    require_once dirname(__FILE__) . '/../../../vendor/autoload.php';

    // gateway 進(jìn)程,這里使用Text協(xié)議,可以用telnet測試
    $gateway = new Gateway("Websocket://0.0.0.0:8282");
    // gateway名稱,status方便查看
    $gateway->name = 'YourAppGateway';
    // gateway進(jìn)程數(shù)
    $gateway->count = 1;
    // 本機(jī)ip,分布式部署時使用內(nèi)網(wǎng)ip
    $gateway->lanIp = '127.0.0.1';
    // 內(nèi)部通訊起始端口,假如$gateway->count=4,起始端口為4000
    // 則一般會使用4000 4001 4002 4003 4個端口作為內(nèi)部通訊端口
    $gateway->startPort = 2900;
    // 服務(wù)注冊地址
    $gateway->registerAddress = '127.0.0.1:1233';

    // 心跳間隔
    $gateway->pingInterval = 10;
    // 心跳數(shù)據(jù)
    $gateway->pingData = '{"type":"ping"}';

    /
    // 當(dāng)客戶端連接上來時,設(shè)置連接的onWebSocketConnect,即在websocket握手時的回調(diào)
    $gateway->onConnect = function($connection)
    {
    $connection->onWebSocketConnect = function($connection , $http_header)
    {
    // 可以在這里判斷連接來源是否合法,不合法就關(guān)掉連接
    // $_SERVER['HTTP_ORIGIN']標(biāo)識來自哪個站點(diǎn)的頁面發(fā)起的websocket鏈接
    if($_SERVER['HTTP_ORIGIN'] != ' {
    $connection->close();
    }
    // onWebSocketConnect 里面$_GET $_SERVER是可用的
    // var_dump($_GET, $_SERVER);
    };
    };
    /

    // 如果不是在根目錄啟動,則運(yùn)行runAll方法
    if(!defined('GLOBAL_START'))
    {
    Worker::runAll();
    }

  • phpcreeper 2019-01-17

    ws://127.0.0.1:8282, 其中的 127.0.0.1是本地回環(huán)地址,非單機(jī)部署,這里肯定不能填寫 127.0.0.1

  • 小宇宙 2019-01-17

    @614:大佬,我前端的代碼和后端都在同一臺服務(wù)器上,而且我是單機(jī)部署啊

  • phpcreeper 2019-01-17

    @5334: 防火墻放行8282端口了嗎?

  • 小宇宙 2019-01-18

    我阿里云和寶塔的端口都放開了,用公網(wǎng)的IP加8282端口就能正常連接運(yùn)行,換127.0.0.1會報WebSocket connection to 'ws://127.0.0.1:8282/' failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED,你看下我下面端口截圖

小宇宙

[attach]1669[/attach]

[attach]1670[/attach]
?

  • 暫無評論
法師

瀏覽器所在電腦和服務(wù)器不是一臺吧

  • 小宇宙 2019-01-18

    您好,您的意思是我線上頁面上的JS代碼和服務(wù)端在同一臺服務(wù)器上也不能用new WebSocket('ws://127.0.0.1:8282'),而是應(yīng)該用公網(wǎng)的IP是嗎

phpcreeper
  1. 是否能這樣使用,和js代碼是否和服務(wù)端在同一機(jī)器并沒有什么關(guān)系。

  2. 首先你應(yīng)用面向的瀏覽器客戶端,對于js代碼無論是內(nèi)嵌服務(wù)端腳本編寫還是本地純html渲染,最終都是吐給瀏覽器渲染的,交由瀏覽器發(fā)起相應(yīng)請求。

  3. 換句話關(guān)注的是你瀏覽器客戶端所在的主機(jī)和服務(wù)端提供服務(wù)的主機(jī)是否在同一臺機(jī)器,如果在就可以用127.0.0.1,否則就用對應(yīng)服務(wù)器主機(jī)IP去連。

  • 暫無評論
年代過于久遠(yuǎn),無法發(fā)表回答
??