2012-07-02 199 views
2

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

+0

检出:http://stackoverflow.com/questions/4262543/what-are-good-resources-for-learning-html-5-websockets –

回答

2

我不知道你的提供者是否给你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访问。

3

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

例如:在共享主机上测试重启启动是否不可行。