nodejs伺服器如何部署到雲上
『壹』 nodejs可以在雲虛擬主機上用嗎
不可以。絕大多數虛擬主機不支持nodejs。
如有需要可購買VPS,雲主機。
『貳』 如何在Windows Azure上託管一個Node.js網站
1、首先你得會js,然後使用iframe裝載原網頁,再調用其中js2、js簡單,寫在網頁里,用winform載入網頁,nodejs比較復雜,首先你要讓用戶在windows上安裝nodejs(我沒試過),然後再調用nodejs環境,nodejs是linux下用來做伺服器的,和windows程序不搭邊。
『叄』 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和圖片和應用伺服器分開。
『肆』 如何通過輸入域名訪問部署在本機的nodejs伺服器
通過輸入域名訪問部署在本機的nodejs伺服器方法:
修改系統的hosts文件就可以了,比如(想用的域名為:myapp.com,前面加上www.):
node伺服器的host為:localhost,埠(port):8080;
修改系統hosts文件,在末尾加一行代碼:127.0.0.1 myapp.com,前面加上www. 然後保存。
在瀏覽器輸入:myapp.com:8080,前面加上www. 即可訪問(前提是項目node伺服器正在運行,沒運行會失敗);
『伍』 怎麼在阿里雲伺服器里使用nodejs環境
首次登錄雲伺服器,要先進行用戶設置。
用戶設置
首先用passwd命令修改超級管理員root密碼。
1
$ passwd
根據提示連續輸入兩次密碼,很簡單吧。
接著,要新建一個普通的管理賬號並設置密碼,用於日常的系統管理。
1
2
$ useradd user1
$ passwd user1
將用戶添加進管理組,以便於統一管理管理員的許可權。
1
$ usermod -a -G wheel user1
設置新用戶的sudo許可權。
1
$ visudo
執行visudo命令實際上編輯的是/etc/sudoers文件。 找到 root ALL=(ALL:ALL) ALL 這行,並下面添加一行
1
user1 ALL=(ALL:ALL) ALL保存退出,以後就可用用sudo命令執行管理操作了。
修改主機名
每台伺服器都有自己的名字,一般web伺服器會用網站的域名來做主機名。 [用戶名@主機名 ~]$
1
2
$ hostname "www.chufa.la"
$ vi /etc/sysconfig/networkHOSTNAME=www.chufa.la
保存,並退出編輯,下次等登入伺服器就能看到修改的主機名字了。
SSH配置
將ssh的埠22改掉,另外,禁止root通過ssh登錄伺服器,並允許新建的普通管理員登錄。
1
$ vi /etc/ssh/sshd_config
找到 # Port 22 ,去掉#並將22修改為1025到65536 之間的沒被用到的埠號。 找到下面一行,並去掉注釋符。
1
# PermitRootLogin yes在配置文件里添加
1
AllowUsers user1
保存後,退出文件編輯。 重啟sshd
1
$ service sshd restart
下次登錄,就要用新設定的埠號登錄了。
1
$ ssh user1@ip -p port
掛載數據盤
為數據盤建立交換分區和普通分區,並掛載到系統。 首先查看查看數據盤
1
$ fdisk -l
確認數據盤為 /dev/xvdb 接著,對數據盤進行分區操作,
1
$ fdisk -S 56 /dev/xvdb
輸入m可以查看幫助。 這里直接鍵入n新建第一個擴展分區,接著輸入p建立立基本分區,輸入要建立的分區號1,起始簇保持默認,結束簇的位置輸入 +2G (一般擴展分區的大小為內存的兩倍)。 然後,重復上面的步驟,將剩下的分為數據盤,注意第二個分區的分區號為2。
格式化分區
1
2
$ mkswap /dev/xvdb1
$ mkfs.ext4 /dev/xvdb2
啟用swap分區
1
$ swapon /dev/xvdb1
將數據盤的第二個分區,掛載到新建的 /data 目錄。
1
$ mkdir /data
修改fstab文件,保證重啟系統後自動掛載。
1
$ vi /etc/fstab
添加
1
2
/dev/xvdb1 swap swap defaults 0 0
/dev/xvdb2 /data ext4 defaults 0 0
保存文件,並退出編輯,下次啟動系統就能自動掛載數據盤了。
執行掛載命令,可以立即看到掛載的硬碟。
1
$ mount -a
軟體安裝 Nginx Mongo Node
我習慣於多個node進程共享80埠,用nginx反向代理到不同的node服務上去。 安裝nginx。 新建yum倉庫配置文件。
1
$ vi /etc/yum.repos.d/nginx.repo
內容如下:
1
2
3
4
5
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1保存文件,並退出編輯。
執行.
1
$ yum install nginx安裝mongodb
1
$ vi /etc/yum.repos.d/mongodb.repo
文件內容
1
2
3
4
5
[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1保存文件,並退出編輯。
執行
1
$ yum install mongodb-org
安裝Node和NPM
1
$ sudo yum install nodejs npm
至此,伺服器環境就搭建好了。
『陸』 nodejs怎麼體現雲計算
樓主可能沒搞清楚雲計算的概念
nodejs本身是一個基於v8引擎之上做的一套擴展
包含web伺服器,IO,以及外圍的npm打包工具等組成的一套工具(說實在的,沒找到太好的形容詞,所以用工具來替代,而且我自己在思考前端的過程中,語言我自己也是理解成工具,例如js和coffeescirpt和typescript的關系)
雲計算就是富伺服器窮客戶端
以阿里雲的可以分為雲存儲,雲計算,和後續可能產生的圖形引擎,雲渲染等
就我所知的雲存儲,在應用層之下就有file system,虛擬機(用於管理硬體設備),硬體,安全策略
如果以node搭建雲計算只能作為一個應用層,稍微抽象一下我的理解是
node 可以通過相應的協議通過radis,memcache等搭建一個分布式存儲服務
node可以通過對存儲服務的抽象讀寫,通過抽象model層來得到一個對象IO服務
node可以通過router,promise等特性進行業務邏輯的抽象
實現了框架部分就可以去實現具體的讀寫業務
『柒』 如何在阿里雲虛擬機上部署nodejs
遠程式控制制 Linux 類型的系統的伺服器,比如 CentOS 系統的伺服器,一般不像 Windows 伺服器那樣,使用圖形界面的遠程式控制制。我們需要使用命令行工具,遠程連接到伺服器,然後使用命令去控制伺服器。Windows 用戶可以使用 Putty ,Mac 用戶可以使用系統自帶的終端工具。
『捌』 如何在伺服器上搭建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 啟動文件
『玖』 如何在大米雲主機上部署nodejs服務
在大米雲主機上部署nodejs服務方法詳見:https://jingyan..com/article/597a064357d83a312a524343.html
『拾』 Nodejs + MongnDB 怎樣部署到雲伺服器
×
loading..
資訊
安全
論壇
下載
讀書
程序開發
資料庫
系統
網路
電子書
微信學院
站長學院
QQ
手機軟體
考試
Linux|
Windows|
Dos命令行|
瀏覽器|
虛擬機|
其他|
首頁 > 系統 > 其他 > 正文
阿里雲部署Node.js伺服器(Windows環境)
2015-04-20
0 個評論
來源:空気力學少女の詩
收藏
我要投稿
花了大半個月做的網站終於要上線了,周圍的同學們很多都在使用阿里雲的伺服器,我也入手了一台。
考慮到自己不是很適應ubuntu的命令行界面,於是買了個windows的,上網搜了一下,似乎都是用linux來部署nodejs的,所以只能自己摸索著來,所幸的是nodejs本身就相當於web伺服器,所以不需要apache之類的額外配置
一,配置環境
首先是要安裝node環境,可以到官網上下載安裝包,安裝好之後進入目錄安裝express框架:
?
1
2
<code class="hljs lasso">npm install express -gd (全局安裝)
npm install -g express-generator(安裝generator)</code>
詳情看這里: nodejs入門
二,部署網站
然後是把本地網站文件夾上傳到伺服器上,為了圖省事我直接用郵箱附件發過去的==||
不用配置什麼IIS伺服器,也不用什麼網站根目錄,直接丟在桌面上進入目錄使用命令:
?
1
<code class="hljs lasso"><code class="hljs cs">node root.js//自定義的主文件</code></code>
如果已經正確配置了nodejs,就可以正常運行了,就這么簡單
打開chrome(阿里雲自帶IE,自己下了一個chrome),在地址欄輸入
?
1
<code class="hljs lasso"><code class="hljs cs"><code class="hljs css">localhost:3000</code></code></code>
網站就開始運行啦
除此之外,還可以在本地瀏覽器輸入
伺服器ip:3000
就可以遠程訪問了~~~~
不需要什麼網站根目錄,也不需要什麼www,htdocs文件夾,node就是這么好用
三,域名綁定
接下里似乎還有一個問題
輸入IP和埠可以訪問了,域名怎麼搞??
主機寶可以幫我們綁定域名,IIS伺服器也能幫我們綁定域名,但nodejs似乎在裸奔誒
網路了好久,似乎有個叫IISNode的東西但出於對IIS的天然恐懼pass掉。
後來才找到下面的方法:
使用nginx的反向代理綁定域名
下載好nginx的windows版本之後,打開conf文件夾,網上有一些關於linux下nginx的配置,說要打開inculde文件夾新建conf文件但windows版本的似乎沒有啊~~~
解決方法:
打開nginx.conf,在http域裡面,第一個server域下面添加如下內容:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<code class="hljs lasso"><code class="hljs cs"><code class="hljs css"><code class="hljs bash">upstream nodejs {
server 127.0.0.1:3000;
#server 127.0.0.1:3001;
keepalive 64;
}
server {
listen 80;
#xxx是你自己的域名
server_name www.xxx.com xxx.com;
# access_log ../logs/test.log;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Nginx-Proxy true;
proxy_set_header Connection "";
proxy_pass http://nodejs;
}
}</code></code></code></code>
大致就是把外部的80埠訪問轉到本地的3000埠
詳細信息請看下面:
Nginx反向代理Nodejs
這樣就域名就綁定好了
除此之外,還要在域名服務商那裡綁定ip,搞定之後,在瀏覽器輸入域名就可以訪問啦