ID: 16548
Updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
-Status: Feedback
+Status: Open
Bug Type: Apache related
Operating System: RED HAT Linux 7.2
PHP Version: 4.1.2
New Comment:
Hi,
system("exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 1>/dev/null 2>&1
&");
has the same effect!
_mprshut is a daemon that ended in a second.
Please notice: The script doesn't hungs the rest works fine after
system.
I can't open any new page after accessing this script an
_mprshut listen on port 80.
On HP-UX the Apache still works fine with a listening
_mprshut.
Stefan
Previous Comments:
------------------------------------------------------------------------
[2002-04-11 11:37:33] [EMAIL PROTECTED]
Hmm, on second thoughts, it sounds like your OS is broken.
Does the equivalent script written in perl do the same?
------------------------------------------------------------------------
[2002-04-11 11:35:10] [EMAIL PROTECTED]
Please read the docs about system().
System executes the process and waits for it to complete
before returning.
You need to append an & character to your command to cause
it to run in the background.
------------------------------------------------------------------------
[2002-04-11 08:27:19] [EMAIL PROTECTED]
This are my simple commands:
system("$DLC/bin/proserve $CADB/$DB 2>&1");
system("exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 2>&1");
The first command works fine but the second hangs the actual httpd
session.
It executes o.k. but tries to get the actual webserver process:
[root@linux datenbank]# lsof | grep www
httpd 30824 root 16u IPv4 28772 TCP *:www
(LISTEN)
httpd 30825 root 16u IPv4 28772 TCP *:www
(LISTEN)
httpd 30826 root 16u IPv4 28772 TCP *:www
(LISTEN)
httpd 30827 root 16u IPv4 28772 TCP *:www
(LISTEN)
httpd 30828 root 16u IPv4 28772 TCP *:www
(LISTEN)
httpd 30829 root 16u IPv4 28772 TCP *:www
(LISTEN)
httpd 30831 root 16u IPv4 28772 TCP *:www
(LISTEN)
httpd 30835 root 16u IPv4 28772 TCP *:www
(LISTEN)
_mprshut 31169 root 16u IPv4 28772 TCP *:www
(LISTEN)
This process is the parent of 1:
[root@linux datenbank]# ps -ef | grep 31169
root 31169 1 0 13:14 ? 00:00:00
/home/dlc83e/bin/_mprshut /home/
[root@linux datenbank]# ps -ef | grep 30835
root 30835 30824 0 10:59 ? 00:00:00
/usr/local/apache/bin/httpd
Then my actual session of my IE hangs and i only can lose it.
The php script is ended because i got </body> and the IE loading bar
vanished.
I can't restart the server because this process 31169 holds port 80
open.
I use the same script on SCO, Reliant Unix and HP-UX11.
On HP-UX11 the _mprshut also listen on port 80 but on a different
session because the website still reacts.
The apache server restart is impossible before killing this process
manually.
Any ideas where i can search the problem ??
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=16548&edit=1