Re: [users@httpd] CGI child processes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jan Eden <lists@xxxxxxxxxxx> writes:

> I am trying to get a CGI script executed via Apache. The script
>should call another script and exit immediately, while the second
>script is still running in the background.

[...]

> How can I get Apache to disregard the process started by the CGI?

I believe you need to fork twice, so that the long-running process is
a child of init (not a child of Apache).  Something like (untested):

  if (!defined(my $f1 = fork()))
  {
    die "fork failed: $!\n";
  }
  elsif ($f1)
  {
    # Parent
    exit(0);
  }
  elsif (!defined(my $f2 = fork()))
  {
    die "second fork failed: $!\n";
  }
  elsif ($f2)
  {
    # Child
    exit(0);
  }
  else
  {
    # Grandchild
    exec(...);
  }

----ScottG.

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx
   "   from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx
For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx



[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux