...
注意 | ||
---|---|---|
| ||
1、nginx的匹配规则是从上到下的,所以以下规则顺序不能颠倒。 2、如果动态服务器有多个smartbi节点,则动态请求的upstream需要配置会话保持功能。 3、如果使用nginx的check模块进行健康检测,必须使用/smartbi/vision/healthcheck.jsp 接口,不能使用静态资源接口做健康检测。 4、健康检测的接口,不能在黑名单里面。4、如果配置了黑白名单规则,健康检测的接口,必须在白名单中,不能在黑名单里面。 |
代码块 | ||
---|---|---|
| ||
upstream smartbi-static { server 10.10.204.101:18080; } upstream smartbi-dynamic { server 10.10.204.100:18080; ##会话保持配置,nginx默认不带这个功能,需要自行编译才能使用。 ##不同的sticky模块,配置可能不同。需要参考具体的sticky模块配置说明。 ##以下是tengine的会话保持配置示例 session_sticky cookie=smartbi_dynamic_cookie fallback=on path=/smartbi mode=insert option=indirect; ##健康检测配置。nginx默认不带这个功能,需要自行编译才能使用。 ##不同的check模块,配置可能不同。需要参考具体的check模块的配置说明。 ##以下是tengine的健康检测配置示例 check interval=3000 rise=2 fall=5 timeout=1000 type=http; ## customizeName 是在完全版部署的黑白名单规则配置文件 defenderConfig.json中定义的,具体可以查看 Smartbi前后端分离部署_完全版 里面的说明 check_http_send "HEAD /smartbi/vision/healthcheck.jsp HTTP/1.0\r\ncustomizeName: smartbi_header\r\n\r\n"; check_http_expect_alive http_2xx http_3xx; } server { listen 8088; server_name 10.10.204.150; location = /smartbi/vision/gbk.jsp { proxy_pass http://smartbi-static; } location ~ /smartbi/app/.* { proxy_pass http://smartbi-static; } location ~ /smartbi/vision/ssreport/htmls/.* { proxy_pass http://smartbi-dynamic; } location ~ /smartbi/vision/officehtmls/.* { proxy_pass http://smartbi-dynamic; } location ~ /smartbi/vision/.*(\.bmp|\.css|\.cur|\.db|\.eot|\.gif|\.GIF|\.htm|\.html|\.ico|\.jpg|\.JPG|\.js|\.json|\.map|\.otf|\.patch|\.png|\.PNG|\.svg|\.swf|\.template|\.ts|\.ttf|\.ttfx|\.txt|\.woff|\.woff2|\.xls|\.xml|\.yml)$ { proxy_pass http://smartbi-static; } location ~ /smartbi/smartbix/min/.* { proxy_pass http://smartbi-static; } location ~ /smartbi/smartbix/static/.* { proxy_pass http://smartbi-static; } location ~ /smartbi/.* { proxy_pass http://smartbi-dynamic; } } |
...