本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Node.js 應用服務器 AWS OpsWorks 堆疊層
重要
所以此 AWS OpsWorks Stacks 服務於 2024 年 5 月 26 日終止使用壽命,並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載移轉至其他解決方案。如果您對移轉有任何疑問,請聯絡 AWS Support 團隊上 AWS Re: 郵寄
注意
此 layer 僅適用於 Linux 類型堆疊。
Node.js 應用程序服務器層是一個 AWS OpsWorks 堆疊層,為作為 Node.js
Installation (安裝):Node.js 安裝在 /usr/local/bin/node
中。
Add Layer (新增 Layer) 頁面提供下列組態選項:
- Node.js 版本
-
如需目前所支援版本的清單,請參閱AWS OpsWorks 堆疊作業系統。
- 自訂安全群組
-
如果您選擇不自動關聯內建項目,則會顯示此設定 AWS OpsWorks 將安全群組與您的圖層堆疊。您必須指定要和 layer 關聯的安全群組有哪些。如需詳細資訊,請參閱建立新的堆疊。
- Elastic Load Balancer
-
您可以將 Elastic Load Balancing 負載平衡器附加到層的執行個體。
重要
如果您的 Node.js 應用程式使用SSL,我們建議SSLv3您停用以解決 CVE-2015-0.12.9
。
部署 Node.js 應用程式
有關如何實現一個簡單的 Node.js 應用程序的詳細演練 AWS OpsWorks 堆疊並將其部署到堆疊中,請參閱建立您的第一個 Node.js 堆疊。在一般情況下,Node.js 的應用程序 AWS OpsWorks 堆疊應符合下列條件:
-
主要檔案必須命名為
server.js
並且位在已部署應用程式的根目錄中。 -
Express
應用程式必須在應用程式的根目錄中包括 package.json
檔案。 -
根據預設,應用程式必須接聽連接埠 80 (HTTP) 或連接埠 443 (HTTPS)。
可以在其他端口上監聽,但 Node.js 應用程序服務器層的內置安全組 AWS-OpsWorks-NodeJS 應用程序服務器,只允許輸入用戶流量到端口 80,443 和 22()。SSH若要允許其他連接埠的輸入使用者流量,請建立具有適當輸入規則的安全性群組,並將其指派給 Node.js 應用程式伺服器層。請勿透過編輯內建安全群組來修改傳入規則。每次創建堆棧時, AWS OpsWorks 堆疊會以標準設定覆寫內建的安全性群組,因此您所做的任何變更都會遺失。
注意
AWS OpsWorks Stacks 會將PORT環境變數設定為 80 (預設值) 或 443 (如果您啟用SSL),因此您可以使用下列程式碼偵聽要求。
app.listen(process.env.PORT);
如果您將 Node.js 應用程式設定為支援 SSL,則必須指定金鑰和憑證。 AWS OpsWorks 堆疊會將每個應用程式伺服器執行個體的資料做為個別檔案放在/srv/www/
目錄中,如下所示。app_shortname
/shared/config
-
ssl.crt
— 證SSL書。 -
ssl.key
-關SSL鍵。 -
ssl.ca
— 鏈結憑證 (如果已指定)。
您的應用程式可以從這些檔案取得SSL金鑰和憑證。