【发布时间】:2020-03-02 12:02:51
【问题描述】:
我正在使用 IIS 在我的 Windows 计算机上托管一个网站和我的世界服务器。除了我想要一种从网站启动我的世界服务器的方法之外,它们都工作得很好。我有一个批处理文件,我经常运行它来启动它,所以我想也许我可以启动那个批处理文件。我尝试过的一些事情:
exec("cmd.exe /C start server.bat");
shell_exec('start server.bat');
我已授予 IUSR 和 IIS_IUSRS 对 cmd 和服务器文件夹的所有权限。如果它更容易,我也可以尝试在批处理文件中运行代码,也可以从 php 运行。这是 server.bat 里面的内容:
cd C:\Users\username\Desktop\_MCServ
:begin
java -Xms3072m -Xmx3072m -Dlog4j.configurationFile=log4j2.xml -jar spigot-1.14.jar
timeout 5
echo resuming server...
goto begin
循环是这样的,如果服务器停止,它可以自动重新启动。
【问题讨论】:
-
好吧,那真的不好。你调用 java 5 秒,而不是在尝试启动另一个实例之前检查它是否正在运行。