Возможный дубликат: # материал ./fastcgi_bin # stuff Поскольку bash выполняет ловушки только для сигналов, когда заканчивается сценарий переднего плана, я не могу просто убить -TERM ...
Я оборачиваю приложение fastcgi в сценарий bash следующим образом:
#!/bin/bash # stuff ./fastcgi_bin # stuff
Поскольку bash выполняет ловушки только для сигнализирует о завершении сценария переднего плана. Я не могу просто
kill -TERM scriptpid
, потому что приложение fastcgi будет продолжать работать.
Я пробовал отправить двоичный файл в фоновый режим:#!/bin/bash # stuff ./fastcgi_bin & PID=$! trap "kill $PID" TERM # stuff
Но если я сделаю это так, очевидно, что stdin и stdout не будут перенаправлены должным образом, потому что они не связаны с lighttpds mod_fastgi, версия переднего плана действительно работает.
РЕДАКТИРОВАТЬ: Я изучал проблему, и это происходит потому, что bash перенаправляет / dev / null на стандартный ввод, когда программа запускается в фоновом режиме, поэтому любой способ избежать этого должен решить и мою проблему.
Есть подсказки, как решить эту проблему?