แม้ว่าคำตอบอื่น ๆ จะช่วยแก้ปัญหาของ OP แต่พวกเขาก็มีทักษะมากเกินไปและไม่ได้อธิบายว่าทำไมเขาหรือเธอประสบปัญหานี้
ที่สำคัญคือบรรทัดนี้ "ฉันปิด putty แล้วฉันไม่สามารถเข้าถึงที่อยู่"
เมื่อคุณล็อกอินเข้าสู่รีโมตโฮสต์ของคุณบน Putty คุณได้เริ่มต้นกระบวนการ SSH linux และคำสั่งทั้งหมดที่พิมพ์จากเซสชัน SSH นั้นจะถูกดำเนินการในฐานะลูกของกระบวนการดังกล่าว
ปัญหาของคุณคือเมื่อคุณปิด Putty คุณกำลังออกจากเซสชัน SSH ซึ่งฆ่ากระบวนการนั้นและกระบวนการลูกที่ใช้งานอยู่ เมื่อคุณปิดฉาบคุณโดยไม่ได้ตั้งใจฆ่าเซิร์ฟเวอร์ของคุณเพราะคุณวิ่งในเบื้องหน้า หากต้องการหลีกเลี่ยงปัญหานี้ให้เรียกใช้เซิร์ฟเวอร์ในเบื้องหลังโดยต่อท้าย & กับคำสั่งของคุณ:
node /srv/www/MyUserAccount/server/server.js &
ปัญหานี่คือการขาดความรู้ลินุกซ์และไม่ใช่คำถามเกี่ยวกับโหนด สำหรับข้อมูลเพิ่มเติมลองดู: http://linuxconfig.org/understanding-foreground-and-background-linux-processes
UPDATE:
ดังที่คนอื่น ๆ ได้กล่าวถึงเซิร์ฟเวอร์โหนดอาจยังตายเมื่อออกจากเทอร์มินัล gotcha ทั่วไปที่ฉันเจอคือแม้ว่ากระบวนการของโหนดจะทำงานเป็น bg แต่ stdout และ stderr ยังคงชี้ไปที่เทอร์มินัล ซึ่งหมายความว่าหากเซิร์ฟเวอร์โหนดเขียนถึง console.log หรือ console.error มันจะได้รับข้อผิดพลาดไปป์ที่เสียหายและล้มเหลว สิ่งนี้สามารถหลีกเลี่ยงได้โดยการไพพ์เอาท์พุทของกระบวนการของคุณ:
node /srv/www/MyUserAccount/server/server.js > stdout.txt 2> stderr.txt &
หากปัญหายังคงมีอยู่คุณควรพิจารณาสิ่งต่างๆเช่นtmuxหรือnohupซึ่งยังคงมีประสิทธิภาพมากกว่าโซลูชันเฉพาะของโหนดเนื่องจากสามารถใช้เพื่อเรียกใช้กระบวนการทุกประเภท (ฐานข้อมูลบริการบันทึกภาษาอื่น ๆ )
ข้อผิดพลาดทั่วไปที่อาจทำให้เซิร์ฟเวอร์ออกจากนั้นคือหลังจากที่nohup node your_path/server.js &
คุณเรียกใช้คุณเพียงแค่ปิดเทอร์มินัลโป๊วด้วยการคลิกง่ายๆ คุณควรใช้exit
คำสั่งแทนจากนั้นโหนดเซิร์ฟเวอร์ของคุณจะเริ่มทำงาน