如何运行 websocket 服务器。我正在使用 WampServer 2.1

Posted

技术标签:

【中文标题】如何运行 websocket 服务器。我正在使用 WampServer 2.1【英文标题】:how can I run a websocket server. I'm using WampServer 2.1 【发布时间】:2012-01-02 08:25:14 【问题描述】:

它在标题中清楚地说明了这一点。我想要一种在 Wamp 2.1 附带的 apache 服务器中运行 websocket 服务器的方法

更新

查看此页面http://net.tutsplus.com/tutorials/javascript-ajax/start-using-html5-websockets-today/ 查看第 9 步,其中描述了如何运行 websocket 服务器。那是给 XAMPP 的。我想在 WAMP 中做到这一点。很抱歉,如果不清楚。


日期 2

我尝试按照照片中的方式运行它,但如您所见,我做错了。对不起,我不擅长命令行。你能告诉我运行 websocket-server 的确切方法吗


更新 3

又一次试验,什么也没发生。

【问题讨论】:

对不起,没有说得很清楚。你想做什么? 我不确定是否有人真正知道“php-websocket 文件”实际上是什么......至于连接它,尝试过胶带? 有趣的@JamesButler :P 我希望现在很清楚。谢谢。 @SamiAl-Subhi 这让事情变得更清楚了,谢谢 【参考方案1】:

我找到了一些让 WAMP 与本教程一起工作的想法。 您需要编辑 C:\wamp\bin\php\php5.3.9\php.ini 并添加一行 extension=php_sockets.dll 然后调用 php -q C:\wamp \www\websocket\server\startDaemon.php 在 cmd 和 websocket 将工作。

Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\Admin>php -q C:\wamp\www\websocket\server\startDaemon.php
2012-10-30 14:30:35 System: Socket Resource id #7 created.
2012-10-30 14:30:35 System: Socket bound to localhost:8000.
2012-10-30 14:30:35 System: Start listening on Socket.
2012-10-30 14:31:04 WebSocket: Resource id #8 CONNECTED!
2012-10-30 14:31:04 WebSocket: Requesting handshake...
2012-10-30 14:31:04 WebSocket: Handshaking...
2012-10-30 14:31:04 WebSocket: Done handshaking...
2012-10-30 14:31:04 WebSocket: Resource id #8 disconnected!
2012-10-30 14:31:34 WebSocket: Resource id #9 CONNECTED!
2012-10-30 14:31:34 WebSocket: Requesting handshake...
2012-10-30 14:31:34 WebSocket: Handshaking...
2012-10-30 14:31:34 WebSocket: Done handshaking...
2012-10-30 14:31:34 WebSocket: Resource id #9 disconnected!
2012-10-30 14:31:37 WebSocket: Resource id #10 CONNECTED!
2012-10-30 14:31:37 WebSocket: Requesting handshake...
2012-10-30 14:31:37 WebSocket: Handshaking...
2012-10-30 14:31:37 WebSocket: Done handshaking...
2012-10-30 14:31:37 WebSocket: Resource id #10 disconnected!
2012-10-30 14:32:23 WebSocket: Resource id #11 CONNECTED!
2012-10-30 14:32:23 WebSocket: Requesting handshake...
2012-10-30 14:32:23 WebSocket: Handshaking...
2012-10-30 14:32:23 WebSocket: Done handshaking...
2012-10-30 14:32:23 WebSocket: Resource id #11 disconnected!
2012-10-30 14:36:02 WebSocket: Resource id #12 CONNECTED!
2012-10-30 14:36:02 WebSocket: Requesting handshake...
2012-10-30 14:36:02 WebSocket: Handshaking...
2012-10-30 14:36:02 WebSocket: Done handshaking...
2012-10-30 14:36:07 WebSocket: Resource id #13 CONNECTED!
2012-10-30 14:36:07 WebSocket: Requesting handshake...
2012-10-30 14:36:07 WebSocket: Handshaking...
2012-10-30 14:36:07 WebSocket: Done handshaking...
2012-10-30 14:36:10 WebSocket: Resource id #14 CONNECTED!
2012-10-30 14:36:10 WebSocket: Requesting handshake...
2012-10-30 14:36:10 WebSocket: Handshaking...
2012-10-30 14:36:10 WebSocket: Done handshaking...
2012-10-30 14:36:31 WebSocket: Resource id #15 CONNECTED!
2012-10-30 14:36:31 WebSocket: Requesting handshake...
2012-10-30 14:36:31 WebSocket: Handshaking...
2012-10-30 14:36:31 WebSocket: Done handshaking...
2012-10-30 14:36:31 WebSocket: Resource id #15 disconnected!

P/S:我认为还有另一种无需手动编辑 php.ini 的方法。单击 WAMP 图标 PHP -> PHP Extensions -> PHP Socket 并勾选它。我想它也会起作用。

【讨论】:

【参考方案2】:

您唯一需要的是一个 shell/终端/命令行(无论您选择的操作系统如何称呼它),您可以在其中键入:

php -q /path/to/your/script.php

其中php 是PHP 可执行文件的路径,后跟选项-q,后跟脚本的路径。这实际上并不太依赖 (X/W/M)AMP。

【讨论】:

搜索 php.exe 在系统上的安装位置,使用该路径。 不,像C:\wamp\...\php.exe -q C:\...\startDaemon.php这样称呼它。

以上是关于如何运行 websocket 服务器。我正在使用 WampServer 2.1的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 netty 运行 websocket 服务器而不处理其他类型的 HTTP 请求(如 GET 和 POST)。

如何创建安全(TLS/SSL)Websocket 服务器

在春天运行 javax.websocket 端点?

通过 https 加载的网页如何连接到在 localhost 上运行的 WebSocket 服务器?

如何使用 ngrok 公开 React 开发服务器和 websocket 服务器

如何在没有 shell 命令的情况下运行 websocket