導航:首頁 > IDC知識 > 在伺服器部署nodejs

在伺服器部署nodejs

發布時間:2020-11-23 04:54:31

1、如何在伺服器上搭建nodejs

先確認下系統環境合不合要求

Python -V(確認python版本大於2.6)

訪問http://nodejs.org/download/下載需要的Node.js版本(wget
http://nodejs.org/dist/v0.10.26/node-v0.10.29.tar.gz )

解壓 tar zxvf node-v0.10.26-linux-x64.tar.gz

進入目錄 cd node-v0.10.26-linux-x64

./configure --prefix=/home/work/setups/node-v0.10.26

make

sudo make install

添加到系統環境 echo "export PATH=$PATH:/home/work/setups/node-v0.10.26/bin">>
~/.bash_profile

. ~/.bash_profile執行該文件更新$PATH變數
###安裝Express
sudo npm install express
-gd g參數:把express安裝到NodeJS的lib目錄d參數:同時安裝依賴模塊包

sudo npm install forever -gd

(異常情況:

如果遇到npm 找不到的情況 確認sudo node -v是否找不到 找不到的話:需要added /usr/local/bin to secure_path in /etc/sudoers :

sudo visudo

把 Defaults secure_path =
/sbin:/bin:/usr/sbin:/usr/bin 這行 改為 Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin然後:x保存退出

如果遇到

npm ERR! Error: Hostname/IP doesn't match certificate's altnames

執行 npm config set strict-ssl false

如果遇到 npm ERR! registry error parsing json

npm cache clean

執行 npm config set registry http://registry.npmjs.eu/

)
###部署forever
$ npm install -g forever

啟動

NODE_ENV=pro LANG='zh' /usr/local/bin/foreverstart-o
/home/work/log/node_out.log-e /home/work/log/node_err.log /home/work/webroot/index.js

NODE_ENV=pro 環境變數 pro為生產環境(程序中可以指定)

LANG 環境變數 指定默認語言

node_out.log 輸出日誌 注意路徑別抄成我的了

node_err.log 錯誤日誌

index.js 啟動文件

2、如何在 apache 伺服器上部署 nodejs 應用

tomcat你知道嗎?假設用java開發,生產環境的發布過程,先編譯java的代碼,然後打包放到tomcat容器中,最後啟動tomcat這就是發布了。

nodejs需要通過npm install安裝需要的mole依賴,假設你的應用入口是app.js,那麼運行node app.js就是啟動了nodejs。

一般在生產環境上還要監控nodejs的狀態,如果掛了自動重啟,nodejs的特點就是容易掛,重啟非常快。

3、如何通過輸入域名訪問部署在本機的nodejs伺服器

通過輸入域名來訪問部署在本機的自nodejs伺服器方法:
修改系統的hosts文件就可以了,比如(想用的域名為:myapp.com,前面加上www.):

node伺服器的host為:localhost,埠(port):8080;
修改系統hosts文件,在末尾加一行代碼:127.0.0.1 myapp.com,前面加上www. 然後保存。
在瀏覽器輸入:myapp.com:8080,前面加上www. 即可訪問(前提是項目node伺服器正在運行,沒運行會失敗);

4、nodejs怎麼部署到伺服器上

伺服器推薦用nginx,配置簡單,性能強悍。
nginx可以使用代理訪問後端的Node.js應用伺服器。

配置方法:
1)在配置文件http段內容添加後端伺服器:
http {
#添加後端伺服器,和nginx負載均衡配置一樣
upstream nodejs {
server 127.0.0.1:8080;
}
...
}

2)給應用添加虛擬主機
server {
listen 80;
server_nameIP
location / {
proxy_pass nodejs;#名字和前面的對應,將所有的請求轉發給後端的node
}
access_log logs/nodejs.access.log main;#如果需要日誌的話
}

推薦將靜態文件如css、js和圖片和應用伺服器分開。

5、nodejs 如何部署到伺服器上?

兩點:第一是否是線上服務,第二是否需要守護進程;
第一點,如果是線上服務,毫無疑問需要一個守護進程來保證,發生意外導致進程退出後,能重新啟動,提供服務;當然就需要pm2等守護進程來啟動,使用方法請自行參照github;第二點,是否需要守護進程,如果不需要,那麼直接node啟動即可;如果需要,也不必擔心pm2啟動進程後並不會搶占伺服器資源,如果你的server有很大的需求,毋庸置疑需要更多的內存和cpu,如果沒有很大需求,pm2會基於linux的資源調度策略,並不會搶占;

6、如何在生產伺服器上部署 Node.js 應用

伺服器推薦用nginx,配置簡單,性能強悍。
nginx可以使用代理訪問後端的Node.js應用服內務器。

配置容方法:
1)在配置文件http段內容添加後端伺服器:
http {
#添加後端伺服器,和nginx負載均衡配置一樣
upstream nodejs {
server 127.0.0.1:8080;
}
...
}

2)給應用添加虛擬主機:
server {
listen 80;
server_nameIP
location / {
proxy_pass nodejs;#名字和前面的對應,將所有的請求轉發給後端的node
}
access_log logs/nodejs.access.log main;#如果需要日誌的話
}

推薦將靜態文件如css、js和圖片和應用伺服器分開。

7、伺服器部署nodejs的幾種方法

由於自身特性的原因。node程序必須保持開啟才能訪問網站,而當我們關閉SSH時這些進程都會被停止。有以下3種方法可以避免這個問題。

screen

Screen,虛擬終端管理器。可以在後台管理終端界面,防止SSH斷開以後任務停止運行。

安裝方法:

sudo apt-get screen (以ubuntu為例)

使用方法:

使用screen -S [任意id]命令進入一個名為id的終端,此時便可以隨意執行操作 
例如執行sudo apt-get upgrade,或者其它消耗時間比較長的工作,像編譯內核等等。

按ctrl+a後再按d保存虛擬終端,系統提示deatached即為保存成功 
接下來可以斷開SSH終端,虛擬終端仍會執行。

訪問已經創建好的終端 
screen -ls 列出已經創建的正在後台運行的終端 
screen -r xxx 進入終端 
例如 screen -r terminal1

徹底退出 
screen -r 進入終端後執行exit即可完全退出

PM2

pm2 是一個帶有負載均衡功能的Node應用的進程管理器.當你要把你的獨立代碼利用全部的伺服器上的所有CPU,並保證進程永遠都活著

安裝方法

npm install -g pm2

使用方法

啟動應用 pm2 start -watch app.js

重啟應用 pm2 restart app.js

顯示進程列表 pm2 list

停止某應用 pm2 stop app_name|app_id

停止所有應用 pm2 stop all

小白方案

個人目前用的是寶塔Linux面板,可以說是把Linux的各種操作都已比較簡單的形式展現出來了,不需要什麼Linux知識就能掌握 寶塔官網了解一下

而這其中內置了PM2管理,裝一下就OK了 

8、阿里雲伺服器怎麼部署nodejs

小鳥雲伺服器來niaoyun實例創建好之後源,您可以使用以下任意一種方式登錄伺服器:

遠程桌面連接(,MSTSC):採用這種方式登錄,請確保實例能訪問公網。如果在創建實例時沒有購買帶寬,則不能使用遠程桌面連接。

管理終端VNC:無論您在創建實例時是否購買了帶寬,只要您本地有網頁瀏覽器,都可以通過管理控制台的管理終端登錄實例。

使用遠程桌面連接(MSTSC)登錄實例

打開開始菜單>遠程桌面連接,或在開始菜單>搜索中輸入mstsc。也可以使用快捷鍵Win+R來啟動運行窗口,輸入mstsc後回車啟動遠程桌面連接。

在遠程桌面連接對話框中,輸入實例的公網IP地址。單擊顯示選項。

輸入用戶名,如小鳥雲默認為niaoyun。單擊允許我保存憑據,然後單擊連接。這樣以後登錄就不需要手動輸入密碼了。

9、如何通過輸入域名訪問部署在本機的nodejs伺服器

通過復輸入域名訪問部制署在本機的nodejs伺服器方法:
修改系統的hosts文件就可以了,比如(想用的域名為:myapp.com,前面加上www.):

node伺服器的host為:localhost,埠(port):8080;
修改系統hosts文件,在末尾加一行代碼:127.0.0.1 myapp.com,前面加上www. 然後保存。
在瀏覽器輸入:myapp.com:8080,前面加上www. 即可訪問(前提是項目node伺服器正在運行,沒運行會失敗);

10、用nodejs做項目,要部署在客戶伺服器,怎麼能防止js代碼泄漏?

用這個,專業做JS代碼加密的,可以用於nodejs代碼保護:JShaman

可以在線使用,在線加密,非常好用。

JShaman = JS + Shaman,即:JS薩滿。
在傳統的世界觀,或游戲概念中。薩滿巫師具有治癒、輔助、守護的含意。
「JS薩滿」的寓意是:治癒JS代碼公開透明的缺陷、輔助JS開發、守護JS產品。

與在伺服器部署nodejs相關的知識