gpt4 book ai didi

php - websocket的服务器端需要什么?

转载 作者:行者123 更新时间:2023-12-03 12:01:01 24 4
gpt4 key购买 nike

我正在使用以下 js 插件,它允许我在 android 和 iOS 上使用 WebSockets 以及用 html5 编写的应用程序(在我的情况下通过 phonegap)。

https://github.com/FreakDev/PhoneGap-Android-HTML5-WebSocket

为了使用 websocket,我还需要什么?

我有一个安装了 PHP 和 MySQL 的 bluehost 基本服务器。我需要做什么?

最佳答案

首先,您可以使用这样的库:
http://code.google.com/p/phpwebsocket/

其次,您的主机必须允许您创建套接字。这意味着 PHP 必须启用 php_sockets.dll (Win) 或 sockets.so (Linux) 扩展并从您的服务器转发端口。
您还需要从命令行运行您的 php 或以某种方式使其永远保持活力。

这就像在 PHP 中创建一个普通的套接字一样。

*编辑:

  • WebSockets 只是某种普通的套接字。在 websocket 中,您可以连接到正在监听连接的端点,然后与之通信。就像普通的套接字一样,但在协议(protocol)上有简单的区别和更多的限制。为此,您需要一个脚本或应用程序来永久运行并处理来自网页的所有连接。但是一个 php 文件将在请求结束后结束。为了让 php 文件永远运行,您需要从命令行运行它,这意味着您需要具有 shell 访问权限,或者您可以使用此代码永远运行您的 php 脚本:(但您必须考虑一种调用它的机制只有一次)

    忽略用户中止(真);

    ini_set('max_execution_time', 0);

    设置时间限制(0);
  • 你可以测试一下。如果您的应用程序失败并显示有关不知道诸如 socket_connect 或 socket_bind 之类的函数的错误消息,那么您没有 php 的套接字扩展。
  • 这是供下载的phpwebsocket文件:
    http://phpwebsocket.googlecode.com/svn/trunk/%20phpwebsocket/
    那里也有一个例子。
  • 正如“Tom van der Woerdt”所说,PHP 不是为进行套接字编程而设计的。选择非脚本语言并使用专用服务器或至少一个 vps 来打开和管理套接字。
  • 关于php - websocket的服务器端需要什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14633708/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com