轉載請註明出處:https://leytton.blog.csdn.net/article/details/102422601
如果本文對您有所幫助,請點個贊讓我知道哦 😃
Node-RED是一個基於瀏覽器的可視化編程工具,通過簡單的托拉拽,就能夠簡單快速地將硬件設備、API和在線服務通過MQTT、TCP、Websocket、HTTP等組件連接在一起。
一覽爲快:
1、安裝
項目地址:
https://github.com/node-red/node-red
安裝:sudo npm install -g --unsafe-perm node-red
啓動:node-red
打開瀏覽器:http://localhost:1880
啓動後默認端口是1880
,如果我們想使用純域名(不帶端口號)訪問,那麼需要怎麼做呢?
3、添加模塊
除了面板裏顯示的模塊,還可以自行添加模塊。點擊右上角
>設置
>Palette
>搜索模塊
,查找自己喜歡的模塊安裝即可。可以在這裏添加mqtt
(服務器)、redis
、mysql
等模塊。
2、HTTP反向代理
添加一個網站,例如域名爲xxx.llqqww.com
,配置網站,開啓反向代理:
3、Websocket反向代理
發現NodeRed還有Websocket服務,僅僅配置HTTP反向代理是不夠的,還需要配置Websocket反向代理。
總的配置如下,關鍵是添加了proxy_set_header
和proxy_set_header
:
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server
{
listen 80;
server_name node.llqqww.com;
index index.php index.html index.htm default.php default.htm default.html;
root /www/wwwroot/node.llqqww.com;
#SSL-START SSL相關配置,請勿刪除或修改下一行帶註釋的404規則
#error_page 404/404.html;
#SSL-END
#ERROR-PAGE-START 錯誤頁配置,可以註釋、刪除或修改
error_page 404 /404.html;
error_page 502 /502.html;
#ERROR-PAGE-END
#PHP-INFO-START PHP引用配置,可以註釋或修改
#PROXY-START
location /
{
proxy_pass http://127.0.0.1:1880;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
add_header X-Cache $upstream_cache_status;
expires 12h;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
location ~ .*\.(php|jsp|cgi|asp|aspx|flv|swf|xml)?$
{
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://127.0.0.1:1880;
}
#PROXY-END
}
4、面板密碼設置
NodeRed默認不需要賬號密碼就可以使用,我們可以對其配置成登錄認證使用。
切換到NodeRed的node_modules依賴庫目錄下,執行生成密碼的語句:
[root@aliyun node_modules]# pwd
/www/server/nvm/versions/node/v10.16.3/lib/node_modules/node-red/node_modules
[root@aliyun node_modules]# node -e "console.log(require('bcryptjs').hashSync(process.argv[1], 8));" password
產生密碼:
$2b$18$C2*********CDNrqT51Dqfz/0.
修改配置文件
[root@aliyun node_modules]# vim /root/.node-red/settings.js
設置賬號密碼登錄並更改密碼:
adminAuth: {
type: "credentials",
users: [{
username: "admin",
password: "$2b$18$C2*********CDNrqT51Dqfz/0.",
permissions: "*"
}]
},
5、後臺運行
直接運行命令爲:node-red
後臺運行命令爲:
nohup node-red >/dev/null 2>&1 &
exit
注意在putty
中要用exit
退出,不然nohup
會失效。