簡體   English   中英

無法通過“&”使nodejs在后台工作

[英]Unable to make nodejs work in background by “&”

我正在嘗試在后台啟動nodejs服務器:

nodejs  my_app.js &

但是它顯示了調試消息(“從0.0.0.0開始...”),然后我通過ssh從服務器斷開連接,它終止了。 為什么?

因為使用'&',您的節點進程仍然與調用進程綁定在一起(例如,您在其中鍵入的Shell)。 通過殺死您的ssh-session,您還將殺死其所有子進程。

@SourbhGupta的答案是唯一的。 nohup讓子進程忽略掛斷信號。 因此,終止調用進程對其子進程沒有影響。

在屏幕上運行它。

屏幕處理在后台運行。

1. sudo apt-get安裝屏幕

2.screen(開始屏幕處理)

3.運行您的服務

4.node my_app.js(沒有&將做)

5.Ctrl + a + k使其分離。

有關屏幕的更多信息-https : //www.digitalocean.com/community/tutorials/how-to-install-and-use-screen-on-an-ubuntu-cloud-server

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM