Avatar billede dennism Nybegynder
14. november 2005 - 21:27 Der er 14 kommentarer og
1 løsning

PHP: Genstart apache

Er det muligt at genstarte Apache via browseren?

Jeg har lavet dette:
exec("net stop apache2");
exec("net start apache2");

Problemet er bare, at når jeg kører det, går serveren jo ned, inden den når at starte igen.

Findes der en løsning?
Avatar billede yezbarh Nybegynder
14. november 2005 - 21:30 #1
Forstår ikke helt?!
Altså det fungere fint, den stopper bare uden at starte igen, eller hva'?
Avatar billede yezbarh Nybegynder
14. november 2005 - 21:33 #2
Kan du ikke bare lave dette??

<?php
function start()
{
    exec("net start apache2");
}

function stop()
{
    exec("net stop apache2");
}
if ($_GET['page'] == "stop")
{
  stop();
}
if ($_GET['page'] == "start")
{
  start();
}
print "<a href=\"?page=start\">Start apache2</a><br />\n";
print "<a href=\"?page=stop\">Stop apache2</a><br />\n";
?>
Avatar billede dennism Nybegynder
14. november 2005 - 21:46 #3
Problemet er, at når jeg først har stoppet den, så kan jeg jo ikke få adgang til serveren igen for at starte den :)
Avatar billede yezbarh Nybegynder
14. november 2005 - 21:47 #4
Hehe, så er der vist ingen mulighed :-)
hvorfor ikke restarte den så?

exec("net restart -r apache2"); tror jeg det er
Avatar billede yezbarh Nybegynder
14. november 2005 - 21:47 #5
Avatar billede dennism Nybegynder
14. november 2005 - 21:56 #6
Hvordan kan jeg teste om jeg har tilladelse til at lave en exec? For synes nemlig ikke at serveren genstarter når jeg forsøger.
Avatar billede dennism Nybegynder
14. november 2005 - 22:00 #7
Kan se at kommandoen "net restart -r apache2" ikke virker. Ved du hvad den skal være?
Avatar billede yezbarh Nybegynder
14. november 2005 - 22:02 #8
prøv
shell_exec("start net restart -r apache2");
eller
exec("net restart -r apache2");

Kan ikke love noget!
Avatar billede dennism Nybegynder
14. november 2005 - 22:05 #9
Det hjælper ikke.
Jeg har også prøvet at lave følgende:
exec("c:/restartapache.bat");

hvor filen så indeholder:
"C:\Programmer\Apache Group\Apache2\bin\Apache.exe" -w -n "Apache2" -k restart

Kan se at det giver en fejl i error loggen. Det virker fint hvis jeg bare kører .bat-filen - så genstarter serveren, men hvis det er PHP der kører filen, gider den åbenbart ikke.
Avatar billede dennism Nybegynder
14. november 2005 - 22:06 #10
I error-loggen skriver den bare:

Usage: C:\\Programmer\\Apache Group\\Apache2\\bin\\Apache.exe [-D name] [-d directory] [-f file]
                                                        [-C "directive"] [-c "directive"]
                                                        [-w] [-k start|restart|stop|shutdown]
                                                        [-k install|config|uninstall] [-n service_name]
                                                        [-v] [-V] [-h] [-l] [-L] [-t] [-S]
Options:
  -D name          : define a name for use in <IfDefine name> directives
  -d directory      : specify an alternate initial ServerRoot
  -f file          : specify an alternate ServerConfigFile
  -C "directive"    : process directive before reading config files
  -c "directive"    : process directive after reading config files
  -n name          : set service name and use its ServerConfigFile
  -k start          : tell Apache to start
  -k restart        : tell running Apache to do a graceful restart
  -k stop|shutdown  : tell running Apache to shutdown
  -k install        : install an Apache service
  -k config        : change startup Options of an Apache service
  -k uninstall      : uninstall an Apache service
  -w                : hold open the console window on error
  -e level          : show startup errors of level (see LogLevel)
  -E file          : log startup errors to file
  -v                : show version number
  -V                : show compile settings
  -h                : list available command line options (this page)
  -l                : list compiled in modules
  -L                : list available configuration directives
  -t -D DUMP_VHOSTS : show parsed settings (currently only vhost settings)
  -S                : a synonym for -t -D DUMP_VHOSTS
  -t                : run syntax check for config files
Apache.exe: illegal option -- w
Avatar billede dennism Nybegynder
14. november 2005 - 22:09 #11
Hvis man kører "net restart -r apache2" i cmd får man også en fejl. Der må være en anden kommando, som kan genstarte?
Avatar billede yezbarh Nybegynder
14. november 2005 - 22:11 #12
Måske, men ikke hvad jeg ved af.
Avatar billede dennism Nybegynder
14. november 2005 - 22:14 #13
Oki - så må jeg håbe at der kommer en anden forbi, som kan hjælpe.
Avatar billede dennism Nybegynder
15. november 2005 - 07:09 #14
Ingen der kan hjælpe her?
Avatar billede dennism Nybegynder
16. november 2005 - 20:37 #15
.lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester