Bonjour,

cela fais une semaine que je recherche a lancé et fermé un serveur (comme minecraft, starmade...) à partir d'une page web. (le .jar du serveur ainsi que la page web sont sur le même serveur dédier).

mais malgré mais recherche, rien à faire. le seul moyen est de passé par putty pour lancé la commande et quand je quitte putty sa me ferme le serveur.

voici le code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<?php
		if(!empty($_POST))
	   {
	   if(!empty($_POST['arreterMin']) && empty($_POST['demarrerMin']))//On va arrêter le serveur, mais on vérifie que quelqu'un envoie pas l'instruction d'arrêt et de démarrage
		  {
		  if(shell_exec('ton shell /chemin/vers/ton/script/d/arrêt'))
			 {
				echo 'Le serveur a bien été arrêté. <br />';
			 }
		  else
			 {
				echo 'Un problème est survenu lors de l\'extinction. <br />';
			 }
		  }
	   if(!empty($_POST['demarrerMin']) && empty($_POST['arreterMin']))//Pareil, on vérifie qu'on essaye pas d'éteindre et de rallumer
		  {
		  if(true)/*shell_exec('serveur/serveur/minecraft/start.sh')*/
			 {
				echo 'Le serveur a bien été démarré. <br />';
				/*echo exec('serveur/serveur/minecraft/start.sh');*/ // premiere essais
				$commande_m = "java -Xms512M -Xmx512M -jar serveur/serveur/minecraft/minecraft_server.1.8.jar nogui" . $_SESSION['file']; // second essais
				$back_m = passthru($commande_m, $backvalue_m);
			 }
		  else
			 {
				echo 'Un problème est survenu lors du démarrage. <br />';
			 }      
		  }
	   }
		$_ip_m = "XXX.X.XXX.XXX";
		$_port_m = "25565";
		$timeout = "3";
		if ($_ip_m and $_port_m and $timeout) { // contrôle si le serveur est ouvert
			$crshing = @fsockopen("$_ip_m", $_port_m, $errno, $errstr, $timeout);
		}
		if($crshing) { // serveur ouvert
 
			// _______________________________ récupération d'information (nb de joueur connecté)_________________________________________________
 
			// _______________________________  affichage information _________________________________________________
 
			echo '<img id=ImagesEtatServeur src="serveur/images/Min_on.png" width="300" height="200"/> 
			<p id=InfoNBJouerServeur> Joueur : </p>
			<form method="post" action="">
				<input type="submit" value="Arrêter le serveur" name="arreterMin" />
			</form>
			';
		}
		else { // serveur fermé
			echo '<img id=ImagesEtatServeur src="serveur/images/Min_off.png" width="300" height="200"/>
			<p id=InfoNBJouerServeur> Joueur : </p> 
			<form method="post" action="">
				<input type="submit" value="Démarrer le serveur" name="demarrerMin" />
			</form> ';
		}
	?>

le bute final serai de pourvoir ouvrir et fermé les différent serveur depuis une page web (la fermeture sera rendu possible que si il n'y a personne sur le serveur)

merci d'avance pour votre aide