Hey all,

There's probably a very easy answer to my question, but I've never been 
very good with managing process and haven't been able to find this 
addressed directly in the archives. So: I'm trying to have a CGI script 
that will publish a ton of different XML files. The publishing process 
is pretty long, maybe it will run 10 or 15 minutes, but it's not 
complicated, and the user doesn't need any feedback, they just need a 
message that says "we started the process; it should be done in a few 
minutes."

I tried running code that looks like this:

is_parent = fork
system '/some/external/script.rb' unless is_parent
print "Location: /admin_page\n"

And this works on the command-line. It prints the location line right 
away and then ends quickly, leaving the external script to run in the 
background until it finishes of its own accord.

But the same script doesn't work in Apache ... it runs the external 
script, but hangs and doesn't exit. I guess Apache is treating the 
spawning of external processes differently. Anybody have experience 
with this? Is there some really obvious solution I'm missing?

tia,
Francis Hwang
http://fhwang.net/