【问题标题】:PHP socket serverPHP 套接字服务器
【发布时间】:2012-07-02 18:05:02
【问题描述】:

我对套接字编程很陌生,但是用 php 编写了很多代码。 我已经测试了一些套接字服务器示例代码,并且在 localhost 上运行良好。我使用 CLI 来运行服务器。但我担心的是如何在托管服务器上运行套接字服务器 .php 文件?托管服务提供商通常会授予 CLI 访问权限以运行服务器吗?如何确保我的服务器始终在运行?如果托管服务器重新启动,我的服务器会发生什么情况?万一我的服务器崩溃(无论什么原因),我必须手动运行它吗? 有人可以帮忙吗?

【问题讨论】:

标签: php sockets websocket


【解决方案1】:

我不知道您的提供商是否为您提供 ssh 访问权限。有些提供商会这样做,但这是托管服务器或根服务器。

然后您可以通过 CLI 运行您的脚本。

当您可以通过 CLI 运行服务器并且拥有足够的权限时,您可以将脚本插入运行级别。还有一种叫做“shebang”的东西。有了这个,你可以让你的脚本直接使用 php 解释器,并在没有 php 命令之前运行脚本。

php test.php or /usr/bin/php testScript.php

您可以使用 test.php 直接运行您的脚本或仅将您的脚本命名为 testScript

当您将脚本放到 /usr/local/bin(对于 debian)时,您可以像 php 命令一样每次通过命令运行它。

编辑:我忘记了一些事情。例如,对于此解决方案,您必须将 /etc/init.d/skeleton 复制到 /etc/init.d/runPHPSocketServer 并更改顶部的脚本值。然后你可以将它插入到运行级别。

#: testScript or runPHPSocketServer start

当脚本位于可执行目录下时,您可以将其插入系统运行级别。

#: update-rc.d runPHPSocketServer defaults

所以你看到有一些解决方案,但对于大多数解决方案,你需要 ssh 访问。

【讨论】:

    【解决方案2】:

    如果您谈论的是托管服务器,我希望您谈论的是共享托管。在这种情况下,即使您设法运行服务等,也很难保持稳定。我建议至少使用一个 VPS。这样您就可以在后台运行它,在重新启动时自动启动它,还可以安装软件来检查进程并在失败时重新启动它。

    例如:在共享主机上无法测试重启启动是否有效。

    【讨论】:

      猜你喜欢
      • 2012-07-22
      • 1970-01-01
      • 2014-03-10
      • 2014-11-05
      • 2012-01-22
      • 1970-01-01
      • 2021-08-30
      • 2015-09-29
      • 2011-06-12
      相关资源
      最近更新 更多