首頁 > 運維 > Nginx > 主體

怎麼用Forever和nginx部署Node站點

PHPz
發布: 2023-05-14 23:52:16
轉載
1513 人瀏覽過

執行緒持久運行

一般來說,我們在window cmd上透過node index.js啟動一個伺服器,只要不關閉,就可以一直存取和呼叫介面。但是在linux上往往如果長時間不操作或你要執行其他操作時候,你的node服務就會斷開,用戶也不能訪問你的網站了。怎麼辦?我們可以安裝forever模組來解決。

npm install forever -g // 全局安装forever模块
登入後複製

由原先的啟動方式node index.js 改為forever start index.js即可,下面列出幾個常見命令

forever list // 列出当前所有运行的服务
forever start -w index.js // 文件改动自动重启
forever stopall // 停止所有服务
forever stop app.js //停止其中一个node app 
forever stop [id] // forever list 找到对应的id,然后
登入後複製

當然還有許多命令,可以查閱相關模組。一般來說最簡單的使用方式就是:

forever start index.js
登入後複製

這樣即使我們切換到其他linux路徑時或退出時,node服務還是存在的,即別人還是可以訪問你的網站啦。

配置nginx

nginx是由俄羅斯人開發的反向代理伺服器,如今已經被全世界許多公司所使用。關於nginx的介紹以及安裝可以自己查閱資料或到菜鳥教學快速學習。這裡我的linux已經安裝好了nginx了.

下面我要使用nginx來代理剛剛forever start index.js啟動的http://localhost:8089了,即透過我的網域來存取http: //localhost:8089 這個網站了.查看nginx設定檔路徑

find / -name nginx.conf
登入後複製

怎麼用Forever和nginx部署Node站點

切換到裡面進入修改裡面設定

 server {
  listen    80; # 监听端口 直接配置80即可
  server_name hellocode.xyz; # 输入域名会跳转到 http://localhost:8089
  include /etc/nginx/default.d/*.conf;
  location / {
   proxy_pass http://118.89.33.75:8089; # 你的node网站应用
  }
  error_page 404 /404.html;
    location = /40x.html {
  }
  error_page 500 502 503 504 /50x.html;
    location = /50x.html {
  }
}
登入後複製

退出檢查設定是否正確

nginx -t
登入後複製

怎麼用Forever和nginx部署Node站點

重新載入nginx

nginx -s reload
登入後複製

開啟瀏覽器輸入網址即可以存取網站啦!

在存取過程之中可能會遇到跨域問題,那麼就需要node端設定支援跨域,以express框架來說,index.js中自訂一個中間件

var allowcors = function(req, res, next) {
 res.header('access-control-allow-origin', req.headers.origin);
 res.header('access-control-allow-methods', 'get,put,post,delete,options');
 res.header('access-control-allow-headers', 'content-type');
 res.header('access-control-allow-credentials','true');
 next();
};
app.use(allowcors);//使用跨域中间件
登入後複製

以上是怎麼用Forever和nginx部署Node站點的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板