Как я могу в Windows сделать авто установку сервера через web php типа
Нажимаю установить у меня качаются файлы потом выдаётся id (srv_id1) папке сервера после распаковываются в данную папку потом переименовываются файлы php.exe в php_id1.exe потом создаётся bat для запуска у которого прописан код запуска не php.exe а php_id1.exe и желательно передавать запрос в POST или GET
Просто не как не могу сделать систему ID серверов вот код для одного сервера
<?php
$filename = "config.json";
$folder = "srv";
$disk = "E:";
if(!(file_exists($filename))) {
shell_exec("curl (качаю config url) --output {$filename}");
}
$file_json = file_get_contents($filename);
$array = json_decode($file_json, true);
$key = $array['key'];
$files = array();
foreach(glob($disk . "/" . $folder . '/*.log') as $file) {
$files[] = basename($file);
}
$file_log = implode(" ", $files);
if(isset($_POST['key'])){
if($_POST['key'] == $key){
if(isset($_POST['hard_reboot'])){
if($_POST['hard_reboot'] == true){
shell_exec("shutdown /r /t 0");
echo("Ok");
unlink($filename);
unlink($disk . "/" . $folder . "/" . $file_log);
}
}
if(isset($_POST['stop'])){
if($_POST['stop'] == true){
shell_exec("script\stop.bat");
echo("Ok");
unlink($filename);
unlink($disk . "/" . $folder . "/" . $file_log);
}
}
if(isset($_POST['start'])){
if($_POST['start'] == true){
shell_exec("script\start.vbs");
echo("Ok");
unlink($filename);
}
}
if(isset($_POST['restart'])){
if($_POST['restart'] == true){
shell_exec("script\stop.bat");
shell_exec("script\start.vbs");
echo("Ok");
unlink($filename);
}
}
if(isset($_POST['info'])){
if($_POST['info'] == true){
if(PHP_OS == "WINNT"){
$os = "Windows";
$ico = "Иконка системы - url";
} else {
$ico = "Иконка что нет системы - url";
$os = "None";
}
$ip = file_get_contents("http://ifconfig.me/ip");
$org = json_decode(file_get_contents("http://ip-api.com/json/" . $ip), true)['isp'];
$disk = disk_free_space($disk);
$format = array('Bytes','KB','MB','GB','TB','PB');
$info_disk = round($disk/pow(1024,($x=floor(log($disk,1024)))),2).' '.$format[$x];
$array = array(
'os' => $os,
'ip' => $ip,
'disk' => $info_disk,
'org' => $org,
'ico' => $ico,
'status' => "ok",
);
$json = json_encode($array);
echo $json;
}
}
if(isset($_POST['log'])){
if($_POST['log'] == true){
if(!($disk . "/" . $folder . "/" . $file_log == $disk . "/" . $folder . "/")){
$get = array();
$file = $disk . "/" . $folder . "/" . $file_log;
$get = file($file, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach($get as $line_num => $line){
echo $line, "\n";
}
} else {
echo("Извините мы не можем отобразить логи поскольку у вас нет данных в файле или же ваш сервер не отвечает");
}
}
}
}
}
?>
Файл - Stop.bat
@echo off
taskkill /f /im php_srv.exe
exit
Файл - Start.vbs
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "cmd.exe /c start E:\srv\start.bat", 0, false
Я хочу просто чтобы при заходе на index.php делался сервер с случайным ID и сам запускался