我是套接字编程的新手,但是使用php进行了大量编码。
我已经测试了一些套接字服务器示例代码,并且可以在localhost上正常工作。我使用CLI运行服务器。但是我担心的是如何在托管服务器上运行套接字服务器.php文件?托管服务提供商通常是否授予对CLI的访问权限以运行服务器?如何确保服务器始终处于运行状态?如果托管服务器重新启动,我的服务器将如何处理?万一我的服务器崩溃了(无论什么原因),我是否必须手动运行它?
有人可以帮忙吗?
最佳答案
我不知道您的提供商是否为您提供了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访问。
关于php - PHP套接字服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11291744/