欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

騰訊云(ubuntu)下安裝 nodejs + 實現(xiàn) Nginx 反向代理服務(wù)器

 更新時間:2016年11月22日 10:07:30   作者:vajoy  
本文將介紹如何給騰訊云上的 Ubuntu Server 12.04 LTS 64位主機安裝 node 及 nginx,并簡單配置反向代理。

本文將介紹如何給騰訊云上的 Ubuntu Server 12.04 LTS 64位主機安裝 node 及 nginx,并簡單配置反向代理。

筆者在整個安裝過程中遇到不少麻煩(不贅述),如果你希望少踩坑,可以按本文的步驟進行安裝部署。
一. 新版 nodejs 安裝

這里強烈推薦使用 nvm (Node版本管理器),其它方式的安裝或多或少都有些問題。

具體步驟如下:

1. 通過 git 指令下載nvm

執(zhí)行指令如下,我們把nvm下載到 /root/git/ 中去(記得要先安裝 git):

[root@VM-22-180-ubuntu~]#pwd
/root
[root@VM-22-180-ubuntu~]#mkdir git
[root@VM-22-180-ubuntu~]#cd git
[root@VM-22-180-ubuntu~]#git clone https://github.com/creationix/nvm.git

2. 配置環(huán)境變量

這里是要修改 .bashrc 文件,如果不清楚其位置,可以回到根目錄執(zhí)行

#find . -name "*.bashrc" -print

來搜索和獲取結(jié)果:
然后通過 vim 修改 ./etc/skel/.bashrc 文件(不過我個人是上方三個文件都做了同樣的修改),在文件開頭加入下面兩行:

export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node
source ~/git/nvm/nvm.sh

其中第一行是修改nvm鏡像路徑到阿里,第二行才是把 nvm 添加到系統(tǒng)環(huán)境中去。

保存后執(zhí)行指令讓配置生效:

#source .bashrc 

3. 直接用nvm安裝nodejs

執(zhí)行指令

#nvm install node

便可安裝新版本的nodejs,安裝成功后,最新版的node就裝在服務(wù)器上了:
二. 安裝 nginx

這里和node一樣不推薦使用 apt-get/aptitude 形式安裝,建議走源碼編譯安裝。

1. 依賴安裝和下載

確保安裝了 gcc-c++  和 libpcre3-dev:

#aptitude install gcc-c++ libpcre3-dev

然后咱定位到 /home/ubuntu 去下載一些依賴包,并解壓縮到該文件夾下:

#wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.gz
#wget http://prdownloads.sourceforge.net/libpng/zlib-1.2.8.tar.gz
#wget https://www.openssl.org/source/openssl-1.1.0c.tar.gz

#tar -xzvf pcre-8.36.tar.gz
#tar -xzvf zlib-1.2.8.tar.gz
#tar -xzvf openssl-1.1.0c.tar.gz

這里咱們下載的是 nginx 模塊所依賴的 pcre/zlib/openssl,壓縮包的下載地址都是在它們對應(yīng)官網(wǎng)中找到的。

需要留意的點是,pcre 不要下載使用 pcre2 的,否則會導(dǎo)致 nginx 編譯過程報錯:
推薦使用上方代碼段提供的 pcre-8.36 版本。

留意下,如果在終端下載的速度太慢了,推薦用迅雷下載在本地后,再通過 FileZilla 把文件同步到云主機上去,百試不爽~

2. 下載和解壓 nginx

先到nginx官網(wǎng)找最新的源碼包下載路徑(截止本文時間,穩(wěn)定版是 http://nginx.org/download/nginx-1.10.2.tar.gz),然后下載下來(我個人是下載到 /root 路徑下):

[root@VM-22-180-ubuntu~]#cd
[root@VM-22-180-ubuntu~]#pwd
/root
[root@VM-22-180-ubuntu~]#wget http://nginx.org/download/nginx-1.10.2.tar.gz

然后解壓此壓縮包,并進入到文件夾 /nginx-1.10.2 去:

[root@VM-22-180-ubuntu~]#tar -xzvf nginx-1.10.2.tar.gz
[root@VM-22-180-ubuntu~]#cd nginx-1.10.2

3. 編譯和安裝

按順序執(zhí)行如下三條指令:

#./configure --prefix=/home/ubuntu/nginx --with-pcre=/home/ubuntu/pcre-8.36 --with-zlib=/home/ubuntu/zlib-1.2.8 --with-openssl=/home/ubuntu/openssl-1.1.0c

#make

#make install

它們的作用分別是:生成C源碼文件和Makefile文件、生成二進制文件、將nginx安裝到指定目錄(/home/ubuntu/nginx)。

注意 ./configure 指令后的參數(shù)分別指定了 nginx 的安裝目錄及相關(guān)依賴模塊地址。

自此,nginx 就安裝完畢啦~

三. 啟動 nginx

執(zhí)行

#/home/ubuntu/nginx/sbin/nginx

可直接啟動 nginx 服務(wù),這時候在任意地方執(zhí)行:

wget http://127.0.0.1

都可以下載到一份 index.html:
這時候我們直接訪問云主機公網(wǎng) ip 地址,就能直接看到該默認頁面:
注意!如果這時無法通過公網(wǎng)ip訪問頁面,請確保云主機所處的安全組是允許所有端口訪問的。
四. 執(zhí)行一個node服務(wù),并通過 nginx 配置實現(xiàn)反向代理

這里我們簡單實現(xiàn)一個 node 頁面,監(jiān)聽3000端口。

我們在本地先寫一個 index.js 文件來耍一耍:

const http = require('http');

const server = http.createServer((req, res) => {
 res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n');
});

server.listen(3000, () => {
 console.log(`node server is now running/`);
});

執(zhí)行 node index 的話,訪問 http://localhost:3000/ 會有“Hello World”的輸出:
然后咱們把這個文件放到云主機去。

鑒于我已經(jīng)掛到 github上,讀者們可以直接通過如下指令來下載該文件:

#git clone https://github.com/VaJoy/node-test.git

p.s. 我個人下載到了“/root/node-project/”文件夾下,要執(zhí)行node的話指令為:

#node /root/node-project/node-test/cp1/index

OK,咱們接著先修改 nginx 配置。如果你忘了 nginx 的配置在哪里,可以執(zhí)行這條指令來確定:

#/home/ubuntu/nginx/sbin/nginx -t

本文的nginx是安裝在 /home/ubuntu 下的,所以其配置文件路徑是“/home/ubuntu/nginx/conf/nginx.conf”,我們這樣編輯它(加上紅框部分的代碼):
這意味著當(dāng)有請求路徑為“/hello”時,nginx 會將請求代理到服務(wù)器的3000端口去(即node監(jiān)聽的端口)。

五. 重啟 nginx 和 node

到這一步的時候別忘了兩點 —— 1. 咱們修改 nginx 配置后還沒重啟nginx服務(wù);2. 咱們還沒有在云主機上跑node服務(wù)(上文僅僅是在本地電腦上跑了一次)。

所以我們分別執(zhí)行如下指令(重啟nginx+跑node):

#/home/ubuntu/nginx/sbin/nginx -s reload

#node /root/node-project/node-test/cp1/index

這時候直接訪問 http://公網(wǎng)ip/hello,就能直接看到node跑起來的頁面內(nèi)容了:

本文送給使用騰訊云的前端童鞋,以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • APACHE支持.htaccess偽靜重寫出錯 No input file specified的解決方案

    APACHE支持.htaccess偽靜重寫出錯 No input file specified的解決方案

    這篇文章主要介紹了APACHE支持.htaccess偽靜重寫出錯 No input file specified的解決方案,需要的朋友可以參考下
    2016-09-09
  • linux nohup及tail-f用法

    linux nohup及tail-f用法

    這篇文章給大家分享了linux nohup及tail-f用法相關(guān)內(nèi)容,有興趣的朋友可以參考學(xué)習(xí)下。
    2018-07-07
  • LAMP環(huán)境安裝所需的一些軟件包下載地址整理

    LAMP環(huán)境安裝所需的一些軟件包下載地址整理

    LAMP環(huán)境安裝所需的一些軟件包下載地址整理,方便配置服務(wù)器的朋友,windows服務(wù)器配置的朋友可以去腳本之家服務(wù)器軟件頻道。
    2010-06-06
  • Apache配置虛擬目錄和多主機頭的方法

    Apache配置虛擬目錄和多主機頭的方法

    這篇文章主要介紹了apache中配置虛擬目錄,以及多主機頭配置,有需要的朋友,可以參考下
    2016-11-11
  • centos7下安裝java及環(huán)境變量配置技巧

    centos7下安裝java及環(huán)境變量配置技巧

    現(xiàn)在我們常見的一些關(guān)于Linux的系統(tǒng)很多,但是使用的更多的一般都是CentOS和Ubuntu,今天我就來記錄一下關(guān)于centos下java的安裝和環(huán)境變量的配置,感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧
    2018-05-05
  • linux壓縮文件和文件解壓縮命令介紹

    linux壓縮文件和文件解壓縮命令介紹

    大家好,本篇文章主要講的是linux壓縮文件和文件解壓縮命令介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • 在阿里云購買云服務(wù)器并安裝寶塔面板的步驟

    在阿里云購買云服務(wù)器并安裝寶塔面板的步驟

    這篇文章主要介紹了在阿里云購買云服務(wù)器并安裝寶塔面板的步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Linux將命令添加到PATH中的方法

    Linux將命令添加到PATH中的方法

    下面小編就為大家?guī)硪黄狶inux將命令添加到PATH中的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • 詳解Lamp環(huán)境搭建Linux CentOS6.5編譯安裝mysql5.6

    詳解Lamp環(huán)境搭建Linux CentOS6.5編譯安裝mysql5.6

    這篇文章主要介紹了詳解Lamp環(huán)境搭建Linux CentOS6.5編譯安裝mysql5.6,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • 解析Linux內(nèi)核與設(shè)備樹的編譯和燒寫

    解析Linux內(nèi)核與設(shè)備樹的編譯和燒寫

    在內(nèi)核源碼中,存在大量對板級細節(jié)信息描述的代碼。開源文檔中對設(shè)備樹的描述是,一種描述硬件資源的數(shù)據(jù)結(jié)構(gòu),它通過bootloader將硬件資源傳給內(nèi)核,使得內(nèi)核和硬件資源描述相對獨立
    2021-06-06

最新評論