我有一个名为chatserver.py的Python脚本,它包括以下内容:
#!/usr/bin/python
from twisted.internet.protocol import Protocol, Factory
from twisted.internet import reactor
<SNIP>
reactor.listenTCP(3800, factory)
print "Server Started"
reactor.run()
我在端口3800上打开了一个socket,如果我从SSH启动它,它可以工作,但我想检查该端口是否关闭,并使用PHP重新打开它。但是我似乎无法执行Python脚本。
目前我是通过PHP调用它的:
function serverCheck() {
$host = "MYHOST";
$port = 3800;
$connection = @fsockopen($host, $port);
if ( !is_resource($connection) ) { // port not open
exec('/usr/bin/python PATH_TO_FILE/chatserver.py 2>&1');
if($connection)
fclose($connection);
}
我尝试了很多搜索到的方法,但似乎无法使文件执行。
PATH_TO_FILE
在 PHP 中是一个常量吗?PHP 常量不会在字符串中插值。 - Joe Frambachls -l chatserver.py
显示root:root
?我猜你正在以yourname:yourname
的身份运行 php 脚本?那就是你的问题所在 :) - Joe Frambach