Über PHP ein startscript aufrufen

onkelz98

Registered User
Hi

Ich brauch mal eure Hilfe und zwar hab ich mir ein bin/bash script gemacht für mta server einfacher zu startet usw. Nun hätte ich gerne eine PHP Seite womit ich den Server Starten.Stoppen und Restarten kann. Kenn mich so nicht mit PHP aus. Hier mal das bash script

Wäre euch sehr dankbar wenn jemand weiss wie ich ueber php auf diese datei zugreifen kann

MFG

Code:
#!/bin/sh
# MTA San Andreas Script by eXo|onkelz
# 21/04/2007 

PATH=/bin:/usr/bin:/sbin:/usr/sbin

# Daten Anpassen ;)
DESC="MTA San Andreas Dedicated Server" # Description
DIR="/home/gta/mtaserver" # Install Ordner von mta_sa.
NAME="mtasa" # Dieser Name wird aufgeführt wenn man screen -r eingibt
PARAMS="" # parameters (mögliche parameters für die zukunft ;)
DAEMON="$DIR/startserver" # Daemon
# Stop editing right now!

case "$1" in
start)
   echo "Starting $DESC: $NAME"
   if [ -e $DIR ];
   then
    cd $DIR
    screen -d -m -S $NAME $DAEMON $PARAMS
   else echo "No such directory: $DIR!"
   fi
   ;;

stop)
   if [[ `screen -ls |grep $NAME` ]]
   then
       echo -n "Stopping $DESC: $NAME"
       kill `screen -ls |grep $NAME |awk -F . '{print $1}'|awk '{print $1}'`
       echo " ... done."
   else
       echo "Coulnd't find a running $DESC"
   fi
   ;;

restart)
   $0 stop
   $0 start
   ;;

  *)
   echo "Usage: $0 {start|stop|restart}"
   exit 1
   ;;
esac

exit
 
Hey,
die einfachste aber wohl auch unsicherste Methode ist du gibst dem Startscript 777 Rechte.
Dann schreibst du in eine .php Datei:
PHP:
<?
system('cd /pfad/zum/script/; ./scriptname start');
?>

So habe ich es früher auch gemacht. NUr ich würde dann die PHP Datei extrem gut sichern, dass nicht einfach jeder die ausführen kann!

MFG
black-rider
 
Bleibt aber wahrscheinlich das Rechteproblem. Der User für den Apache wird nicht für den Gameserver zuständig sein.
 
Der Apache ist doch auch nur ein großes Spielzeug. ;)
Sollte für sowas nicht suexec zuständig sein?

Aber ich könnte mich nicht so wirklich damit anfreunden vom Apache aus Software auf dem Server zu starten.
Dann doch lieber die etwas umständlichere Variante mit dem setzen des Statuses in einer Datenbank oder Datei und ein Script/Programm das per Cron ausgeführt wird startet dann die entsprechende Anwendung.
 
Back
Top