我正在为我的服务器做一个管理,我想使它远程,但我发现了一个问题。当我启动“我的世界”服务器时,该文件的进程仍在工作,我的页面将被冻结,直到该进程被终止。
我找到了很多答案,但不幸的是,我正在Windows上运行它。
有可能吗?我知道我可以启动启动服务器的.bat服务器,但我想说明清楚。
我的代码:
chdir("D:/xampp/htdocs/hosting/servers/" . $id);
//$WshShell = new COM("WScript.Shell");
//$oExec = $WshShell->Run("ava -Xmx1g -jar minecraft_server.jar", 0, false);
//idk how WshShell works, but it didn't worked..
exec("java -Xmx1g -jar minecraft_server.jar");,谢谢您的回复!
编辑
有一个问题。我试着用WinShell开始其他的事情,但什么也没发生。当我想从WinShell开始时,什么事情都没有发生,所以我必须启用一些东西来启用WinShell,还是有人知道为什么我的WinShell不运行?
代码
chdir("D:/xampp/htdocs/hosting/servers/" . $id);
$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run("java -Xmx1g -jar minecraft_server.jar", 0, false);发布于 2018-01-22 11:55:58
好吧,我有办法了。即使是Wscript.Shell也不能工作,这个命令是有效的。
$cmd = "java -jar D:/xampp/htdocs/hosting/servers/" . $id . "/minecraft_server.jar";
pclose(popen("CMD /C start /B " . $cmd, "r"));谢谢你的帮助!
发布于 2018-01-16 19:13:22
这听起来像是你想要触发作为后台进程的“我的世界”服务器。虽然我无法尝试下面的解决方案,但这个线程听起来像是在试图解决一个类似的问题:
PHP exec() as Background Process (Windows Wampserver Environment)
https://stackoverflow.com/questions/48288157
复制相似问题