一、前提
Nginx需要安装stream模块
二、 说明
1:7474端口通过http协议代理
2:7687端口需要通过bolt协议连接
,而bolt协议是建立在tcp协议或者websocket上,所以nginx必须支持tcp协议,所以nginx需要安装stream模块
参考:
https://blog.csdn.net/fransis/article/details/109389535
https://www.cnblogs.com/like1tree/p/9123415.html
三、Nginx关键配置
stream {
upstream bolt {
server node1IP:7687 weight=1 max_fails=1 fail_timeout=60s;
server node2IP:7687 weight=1 max_fails=1 fail_timeout=60s;
}
server {
listen 17687;#对外暴露bolt端口
proxy_pass bolt;
}
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
#gzip on;
upstream my_server1 {
server node1IP:7474 weight=1 max_fails=1 fail_timeout=60s;
server node2IP:7474 weight=1 max_fails=1 fail_timeout=60s;
}
server {
listen 17474;#对外暴露http端口
server_name localhost;
location /neo4j/ {
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_redirect off;
proxy_buffering off;
proxy_pass http://my_server1/browser/;#页面访问地址
}
location /db/data/ {
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_redirect off;
proxy_buffering off;
proxy_pass http://my_server1/db/data/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
注:node1IP 和 node2IP需要根据实际情况填写实际IP