centos下安裝nodejs及websocket

軟件環境:

VitrualBox

CentOS 6.4

NodeJS v0.12.5

安裝過程:

Step 1、確認服務器有nodejs編譯及依賴相關軟件,如果沒有可通過運行以下命令安裝。

[root@****** node-v0.12.5]# yum -y install gcc gcc-c++ openssl-devel

Step 2、下載NodeJS源碼包並解壓。

[root@****** node-v0.12.5]# wget http://nodejs.org/dist/v0.12.5/node-v0.12.5.tar.gz

[root@****** node-v0.12.5]# tar zxvf node-v0.12.5.tar.gz

[root@****** node-v0.12.5]# cd node-v0.12.5

Step 3、配置、編譯、安裝。

[root@****** node-v0.12.5]# ./configure --prefix=/usr/local/node

[root@****** node-v0.12.5]# make && make install

將持續3-4min....

Step 4、接下來配置Node環境

[root@****** node-v0.12.5]# vi /etc/profile


#set nodejs env

export NODE_HOME=/usr/local/node

export PATH=$NODE_HOME/bin:$PATH

export NODE_PATH=$NODE_HOME/lib/node_modules:$PATH


[root@****** node-v0.12.5]# source /etc/profile       --重啓生效

Step 5、測試是否安裝成功

[root@****** node-v0.12.5]# node -v

v0.12.5

出現NodeJS版本號則表示OK。

Step 6、NodeJS之Hello World

[root@****** node-v0.12.5]# node

> console.log(”Hello NodeJS, I'm ****“);

Hello NodeJS, I'm ****

undefined

輸出:Hello NodeJS, I'm ***

Step 7、安裝SocketLog谷歌瀏覽器插件

  • Chrome插件安裝:https://github.com/luofei614/SocketLog 下載後根目錄chrome.crx 

  • (如果不能正常訪問這個頁面,你可以用下面手動安裝的方法進行安裝)

  • 目錄結構:

  • chrome 目錄是 chrome插件的源代碼

  • chrome.crx 文件是chrome插件的安裝包, 如果你無法從chrome應用商店安裝,可進行手動安裝, 瀏覽器地址欄輸入並打開: chrome://extensions/ ,然後將chrome.crx拖入即可安裝。

  • php 目錄下的SocketLog.class.php是發送日誌的類庫,我們在發送日誌的時候,需要載入這個類庫然後調用函數slog即可。

Step 8、安裝Websocket和SocketLog插件

[root@****** local]# npm install websocket

wKioL1WU7ojx6U6UAAMSdcjBnDI983.jpg

Step 9、安裝服務端npm install -g socketlog-server , 運行命令 socketlog-server 即可啓動服務。 將會在本地起一個websocket服務 ,監聽端口是1229 。 如果想服務後臺運行: socketlog-server > /dev/null &

wKiom1WU7eShLAgpAAJ3IeFAvI0497.jpg如果執行nohup報nohup: ignoring input and redirecting stderr to stdout這個提示 請把上面的命令改爲nohup node server/index.js > /dev/null 2>&1 & 這個就沒事了

Step 10、然後查看1229和1116是否被佔用

wKioL1WU8IfiKcFbAAb99PMIFY0242.jpg


wKioL1WV3d-TcR4jAANqkJwMya0519.jpg


Step 11、查看小火箭是否已經連接成功 變成藍色了

wKioL1WU8ULQz9hFAACG8jpTN_Y248.jpg

如果沒有是不是IP地址是正確的 如果是虛擬機請填寫虛擬機的IP地址 SocketLog插件一定要是最新版本的目前是2.0.0 還是不行的話 查看是否已經開放了1229和1116端口

[root@****** local]#cat /etc/sysconfig/iptables 

沒有的話 通過 vi /etc/sysconfig/iptables 

-A INPUT -m state --state NEW -m tcp -p tcp --dport 1116 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 1229 -j ACCEPT

添加好後重啓iptables 命令是:service iptables restart

這個時候小火箭就亮起來了 然後寫代碼進行測試就ok了

Step 11、代碼如下

<?php

    include 'SocketLog-master/php/SocketLog.class.php';

slog(array(

'host'=>'localhost',//websocket服務器地址,默認localhost

'port'=>'1229',//websocket服務器端口,默認端口是1229

'optimize'=>false,//是否顯示利於優化的參數,如果運行時間,消耗內存等,默認爲false

'show_included_files'=>false,//是否顯示本次程序運行加載了哪些文件,默認爲false

'error_handler'=>false,//是否接管程序錯誤,將程序錯誤顯示在console中,默認爲false

'force_client_id'=>'',//日誌強制記錄到配置的client_id,默認爲空wjh_zfH5NbLn

'allow_client_ids'=>array()////限制允許讀取日誌的client_id,默認爲空,表示所有人都可以獲得日誌。wjh_zfH5NbLn

),'set_config');

slog('socketlog success');

?>

wKioL1WU8vSgtxK-AAG-uX_gyQU258.jpg

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章