No problem. I removed the static and re started nginx: (no luck)
server {
listen 443;
server_name [www.analytix.ai](http://www.analytix.ai);
charset utf-8;
client_max_body_size 30M;
access_log C:/CORE_FILES/nginxlog/access.log;
error_log C:/CORE_FILES/nginxlog/error.log debug;
#The internal IP of the VM that hosts your Apache config
location /{
if ( $request_uri ~ ^/(\d+)/([^/]+)) {
proxy_pass http://192.168.0.101:$1/$2/;
#proxy_pass /inetpub/wwwroot/T2A_WEBSITE/stocks/otics/oticslanding/test.php;
}
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host www.analytix.ai;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection “upgrade”;
sub_filter "[192.168.0.101:5007](http://192.168.0.101:5007)" "[www.analytix.ai:443](http://www.analytix.ai:443)";
sub_filter_once off;
proxy_buffering off;
}
}
//////////////////////////////////////////////////////////JS console:
Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:23.833 static/css/bokeh-widgets.min.css?v=509e292d9a7ef7e9eb8382fcde7b4a6e Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:23.844 static/css/bokeh-tables.min.css?v=aa783ffa4e290813a295a99cce2f8b5d Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:23.845 bokeh-widgets.min.js Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:23.846 static/css/bokeh.min.css?v=aff472d598b101a4d4a4c214f39d9604 Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:23.849 bokeh.min.js Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:23.975 bokeh-gl.min.js Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:23.996 bokeh-widgets.min.js Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:24.162 bokeh-tables.min.js Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:24.310 bokeh-gl.min.js Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:24.310 smaurice_5007:17 Uncaught ReferenceError: Bokeh is not defined
at smaurice_5007:17
20:52:24.312 smaurice_5007:40 Uncaught ReferenceError: Bokeh is not defined
at HTMLDocument.fn (smaurice_5007:40)
20:52:24.352 chrome-extension://ahgdclgdhfeingghldkedleghekbfhef/content/bridge.js:1 Connecting to PORT_NAME_SYMANTEC_PKI_CLIENT_CONTENT_TO_BACKGROUND…
20:52:24.355 chrome-extension://ahgdclgdhfeingghldkedleghekbfhef/content/bridge.js:1 Connected: Port
20:52:24.357 chrome-extension://ahgdclgdhfeingghldkedleghekbfhef/content/bridge.js:1 Done.
20:52:24.357 chrome-extension://ahgdclgdhfeingghldkedleghekbfhef/content/detection.js:1 +content/detection.js
20:52:24.359 chrome-extension://ahgdclgdhfeingghldkedleghekbfhef/content/detection.js:1 -content/detection.js
20:52:36.881 bokeh-widgets.min.css Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:36.884 bokeh.min.css Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:36.908 bokeh-tables.min.css Failed to load resource: the server responded with a status of 403 (Forbidden)
20:52:54.147 Navigated to http://www.analytix.ai:443/5007/smaurice_5007
20:52:54.272 smaurice_5007:10 GET http://www.analytix.ai:443/5007/static/css/bokeh-tables.min.css?v=aa783ffa4e290813a295a99cce2f8b5d
20:52:54.273 smaurice_5007:8 GET http://www.analytix.ai:443/5007/static/css/bokeh.min.css?v=aff472d598b101a4d4a4c214f39d9604
20:52:54.275 smaurice_5007:14 GET http://www.analytix.ai:443/5007/static/js/bokeh-tables.min.js?v=a167e11218858d6d2bcbcfdc21a84833
20:52:54.276 smaurice_5007:13 GET http://www.analytix.ai:443/5007/static/js/bokeh-widgets.min.js?v=1e7d9b3a9277b5d7b436fc82ac20197e 403 (Forbidden)
20:52:54.277 smaurice_5007:9 GET http://www.analytix.ai:443/5007/static/css/bokeh-widgets.min.css?v=509e292d9a7ef7e9eb8382fcde7b4a6e
20:52:54.288 smaurice_5007:12 GET http://www.analytix.ai:443/5007/static/js/bokeh.min.js?v=109998b11e3a484f5edd1d191d6338a2
20:52:54.428 smaurice_5007:15 GET http://www.analytix.ai:443/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36
20:52:54.437 smaurice_5007:13 GET http://www.analytix.ai:443/5007/static/js/bokeh-widgets.min.js?v=1e7d9b3a9277b5d7b436fc82ac20197e 403 (Forbidden)
20:52:54.585 smaurice_5007:14 GET http://www.analytix.ai:443/5007/static/js/bokeh-tables.min.js?v=a167e11218858d6d2bcbcfdc21a84833
20:52:54.729 smaurice_5007:15 GET http://www.analytix.ai:443/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36 403 (Forbidden)
20:52:54.730 smaurice_5007:17 Uncaught ReferenceError: Bokeh is not defined
at smaurice_5007:17
(anonymous) @ smaurice_5007:17
20:52:54.734 smaurice_5007:40 Uncaught ReferenceError: Bokeh is not defined
at HTMLDocument.fn (smaurice_5007:40)
fn @ smaurice_5007:40
20:52:54.774 bridge.js:1 Connecting to PORT_NAME_SYMANTEC_PKI_CLIENT_CONTENT_TO_BACKGROUND…
20:52:54.799 bridge.js:1 Connected: Port {}
20:52:54.805 bridge.js:1 Done.
20:52:54.806 detection.js:1 +content/detection.js
20:52:54.808 detection.js:1 -content/detection.js
//////////////////////////////////////////////////////////////////////////////////////////////NGINX LOGS
2017/09/24 20:52:55 [debug] 12152#1712: *1 http cleanup add: 0342B894
2017/09/24 20:52:55 [debug] 12152#1712: *1 malloc: 0342B8B8:4096
2017/09/24 20:52:55 [debug] 12152#1712: *1 get rr peer, try: 1
2017/09/24 20:52:55 [debug] 12152#1712: *1 stream socket 620
2017/09/24 20:52:55 [debug] 12152#1712: *1 connect to 192.168.0.101:5007, fd:620 #41
2017/09/24 20:52:55 [debug] 12152#1712: *1 select add event fd:620 ev:0
2017/09/24 20:52:55 [debug] 12152#1712: *1 select add event fd:620 ev:1
2017/09/24 20:52:55 [debug] 12152#1712: *1 http upstream connect: -2
2017/09/24 20:52:55 [debug] 12152#1712: *1 malloc: 0342D410:128
2017/09/24 20:52:55 [debug] 12152#1712: *1 event timer add: 620: 60000:3062281799
2017/09/24 20:52:55 [debug] 12152#1712: *1 http finalize request: -4, “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36” a:1, c:2
2017/09/24 20:52:55 [debug] 12152#1712: *1 http request count:2 blk:0
2017/09/24 20:52:55 [debug] 12152#1712: *1 post event 03478908
2017/09/24 20:52:55 [debug] 12152#1712: *1 delete posted event 03478908
2017/09/24 20:52:55 [debug] 12152#1712: *1 http upstream request: “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http upstream send request handler
2017/09/24 20:52:55 [debug] 12152#1712: *1 http upstream send request
2017/09/24 20:52:55 [debug] 12152#1712: *1 http upstream send request body
2017/09/24 20:52:55 [debug] 12152#1712: *1 chain writer buf fl:1 s:512
2017/09/24 20:52:55 [debug] 12152#1712: *1 chain writer in: 0342B8A0
2017/09/24 20:52:55 [debug] 12152#1712: *1 WSASend: fd:620, s:512
2017/09/24 20:52:55 [debug] 12152#1712: *1 chain writer out: 00000000
2017/09/24 20:52:55 [debug] 12152#1712: *1 event timer del: 620: 3062281799
2017/09/24 20:52:55 [debug] 12152#1712: *1 select del event fd:620 ev:1
2017/09/24 20:52:55 [debug] 12152#1712: *1 event timer add: 620: 60000:3062281800
2017/09/24 20:52:55 [debug] 12152#1712: *1 post event 03464900
2017/09/24 20:52:55 [debug] 12152#1712: *1 delete posted event 03464900
2017/09/24 20:52:55 [debug] 12152#1712: *1 http upstream request: “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http upstream process header
2017/09/24 20:52:55 [debug] 12152#1712: *1 malloc: 0348D698:4096
2017/09/24 20:52:55 [debug] 12152#1712: *1 WSARecv: fd:620 rc:0 221 of 4096
2017/09/24 20:52:55 [debug] 12152#1712: *1 http proxy status 403 “403 Forbidden”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http proxy header: “Server: TornadoServer/4.5.2”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http proxy header: “Content-Type: text/html; charset=UTF-8”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http proxy header: “Content-Length: 69”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http proxy header: “Date: Mon, 25 Sep 2017 00:52:55 GMT”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http proxy header done
2017/09/24 20:52:55 [debug] 12152#1712: *1 HTTP/1.1 403 Forbidden
Server: nginx/1.12.1
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Content-Encoding: gzip
2017/09/24 20:52:55 [debug] 12152#1712: *1 write new buf t:1 f:0 0342BC1C, pos 0342BC1C, size: 201 file: 0, size: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 http write filter: l:0 f:0 s:201
2017/09/24 20:52:55 [debug] 12152#1712: *1 http proxy filter init s:403 h:0 c:0 l:69
2017/09/24 20:52:55 [debug] 12152#1712: *1 http upstream process non buffered downstream
2017/09/24 20:52:55 [debug] 12152#1712: *1 http output filter “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http copy filter: “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http sub filter “/5007/static/js/bokeh-gl.min.js”
2017/09/24 20:52:55 [debug] 12152#1712: *1 parse: -2, looked: “” 0348D730-0348D775
2017/09/24 20:52:55 [debug] 12152#1712: *1 sub out: 0342BD78 0348D730
2017/09/24 20:52:55 [debug] 12152#1712: *1 http postpone filter “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36” 0342BD70
2017/09/24 20:52:55 [debug] 12152#1712: *1 http gzip filter
2017/09/24 20:52:55 [debug] 12152#1712: *1 malloc: 0348E6A0:270336
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip alloc: n:1 s:5828 a:8192 p:0348E6A0
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip alloc: n:32768 s:2 a:65536 p:034906A0
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip alloc: n:32768 s:2 a:65536 p:034A06A0
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip alloc: n:32768 s:2 a:65536 p:034B06A0
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip alloc: n:16384 s:4 a:65536 p:034C06A0
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip in: 0342BDB8
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip in_buf:0342BD78 ni:0348D730 ai:69
2017/09/24 20:52:55 [debug] 12152#1712: *1 malloc: 034D06A8:32768
2017/09/24 20:52:55 [debug] 12152#1712: *1 deflate in: ni:0348D730 no:034D06A8 ai:69 ao:32768 fl:2 redo:0
2017/09/24 20:52:55 [debug] 12152#1712: *1 deflate out: ni:0348D775 no:034D06DA ai:0 ao:32718 rc:0
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip in_buf:0342BD78 pos:0348D730
2017/09/24 20:52:55 [debug] 12152#1712: *1 http chunk: 10
2017/09/24 20:52:55 [debug] 12152#1712: *1 http chunk: 50
2017/09/24 20:52:55 [debug] 12152#1712: *1 write old buf t:1 f:0 0342BC1C, pos 0342BC1C, size: 201 file: 0, size: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 write new buf t:1 f:0 0342BE90, pos 0342BE90, size: 4 file: 0, size: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 write new buf t:0 f:0 00000000, pos 01615F2C, size: 10 file: 0, size: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 write new buf t:1 f:0 034D06A8, pos 034D06A8, size: 50 file: 0, size: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 write new buf t:0 f:0 00000000, pos 0159AA98, size: 2 file: 0, size: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 http write filter: l:0 f:1 s:267
2017/09/24 20:52:55 [debug] 12152#1712: *1 http write filter limit 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 WSASend: fd:608, s:267
2017/09/24 20:52:55 [debug] 12152#1712: *1 http write filter 00000000
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip in: 00000000
2017/09/24 20:52:55 [debug] 12152#1712: *1 http copy filter: 0 “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36”
2017/09/24 20:52:55 [debug] 12152#1712: *1 finalize http upstream request: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 finalize http proxy request
2017/09/24 20:52:55 [debug] 12152#1712: *1 free rr peer 1 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 close http upstream connection: 620
2017/09/24 20:52:55 [debug] 12152#1712: *1 free: 0342D410, unused: 88
2017/09/24 20:52:55 [debug] 12152#1712: *1 event timer del: 620: 3062281800
2017/09/24 20:52:55 [debug] 12152#1712: *1 select del event fd:620 ev:0
2017/09/24 20:52:55 [debug] 12152#1712: *1 reusable connection: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 http output filter “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http copy filter: “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http sub filter “/5007/static/js/bokeh-gl.min.js”
2017/09/24 20:52:55 [debug] 12152#1712: *1 sub out: 0342BD78 00000000
2017/09/24 20:52:55 [debug] 12152#1712: *1 http postpone filter “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36” 0342BD70
2017/09/24 20:52:55 [debug] 12152#1712: *1 http gzip filter
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip in: 0342BE48
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip in_buf:0342BD78 ni:00000000 ai:0
2017/09/24 20:52:55 [debug] 12152#1712: *1 deflate in: ni:00000000 no:034D06A8 ai:0 ao:32768 fl:4 redo:0
2017/09/24 20:52:55 [debug] 12152#1712: *1 deflate out: ni:00000000 no:034D06AA ai:0 ao:32766 rc:1
2017/09/24 20:52:55 [debug] 12152#1712: *1 gzip in_buf:0342BD78 pos:00000000
2017/09/24 20:52:55 [debug] 12152#1712: *1 free: 0348E6A0
2017/09/24 20:52:55 [debug] 12152#1712: *1 http chunk: 10
2017/09/24 20:52:55 [debug] 12152#1712: *1 write new buf t:1 f:0 0342BF3C, pos 0342BF3C, size: 3 file: 0, size: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 write new buf t:1 f:0 034D06A8, pos 034D06A8, size: 10 file: 0, size: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 write new buf t:0 f:0 0342BE90, pos 015A6848, size: 7 file: 0, size: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 http write filter: l:1 f:1 s:20
2017/09/24 20:52:55 [debug] 12152#1712: *1 http write filter limit 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 WSASend: fd:608, s:20
2017/09/24 20:52:55 [debug] 12152#1712: *1 http write filter 00000000
2017/09/24 20:52:55 [debug] 12152#1712: *1 http copy filter: 0 “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36”
2017/09/24 20:52:55 [debug] 12152#1712: *1 http finalize request: 0, “/5007/static/js/bokeh-gl.min.js?v=bd3543fa9b2c283463abffbdfcc78e36” a:1, c:1
2017/09/24 20:52:55 [debug] 12152#1712: *1 set http keepalive handler
2017/09/24 20:52:55 [debug] 12152#1712: *1 http close request
2017/09/24 20:52:55 [debug] 12152#1712: *1 http log handler
2017/09/24 20:52:55 [debug] 12152#1712: *1 free: 034D06A8
2017/09/24 20:52:55 [debug] 12152#1712: *1 free: 00000000
2017/09/24 20:52:55 [debug] 12152#1712: *1 free: 0348D698
2017/09/24 20:52:55 [debug] 12152#1712: *1 free: 0342A8B0, unused: 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 free: 0342B8B8, unused: 2080
2017/09/24 20:52:55 [debug] 12152#1712: *1 free: 034298A8
2017/09/24 20:52:55 [debug] 12152#1712: *1 hc free: 00000000
2017/09/24 20:52:55 [debug] 12152#1712: *1 hc busy: 00000000 0
2017/09/24 20:52:55 [debug] 12152#1712: *1 reusable connection: 1
2017/09/24 20:52:55 [debug] 12152#1712: *1 event timer add: 608: 65000:3062286802
2017/09/24 20:53:59 [debug] 12152#1712: *6 event timer del: 628: 3062286335
2017/09/24 20:53:59 [debug] 12152#1712: *6 http keepalive handler
2017/09/24 20:53:59 [debug] 12152#1712: *6 close http connection: 628
2017/09/24 20:53:59 [debug] 12152#1712: *6 select del event fd:628 ev:0
2017/09/24 20:53:59 [debug] 12152#1712: *6 reusable connection: 0
2017/09/24 20:53:59 [debug] 12152#1712: *6 free: 00000000
2017/09/24 20:53:59 [debug] 12152#1712: *6 free: 0348D528, unused: 28
2017/09/24 20:53:59 [debug] 12152#1712: *5 event timer del: 624: 3062286342
2017/09/24 20:53:59 [debug] 12152#1712: *5 http keepalive handler
2017/09/24 20:53:59 [debug] 12152#1712: *5 close http connection: 624
2017/09/24 20:53:59 [debug] 12152#1712: *5 select del event fd:624 ev:0
2017/09/24 20:53:59 [debug] 12152#1712: *5 reusable connection: 0
2017/09/24 20:53:59 [debug] 12152#1712: *5 free: 00000000
2017/09/24 20:53:59 [debug] 12152#1712: *5 free: 0348D210, unused: 28
2017/09/24 20:53:59 [debug] 12152#1712: *2 event timer del: 612: 3062286343
2017/09/24 20:53:59 [debug] 12152#1712: *2 http keepalive handler
2017/09/24 20:53:59 [debug] 12152#1712: *2 close http connection: 612
2017/09/24 20:53:59 [debug] 12152#1712: *2 select del event fd:612 ev:0
2017/09/24 20:53:59 [debug] 12152#1712: *2 reusable connection: 0
2017/09/24 20:53:59 [debug] 12152#1712: *2 free: 00000000
2017/09/24 20:53:59 [debug] 12152#1712: *2 free: 0348D000, unused: 28
2017/09/24 20:54:00 [debug] 12152#1712: *3 event timer del: 616: 3062286493
2017/09/24 20:54:00 [debug] 12152#1712: *3 http keepalive handler
2017/09/24 20:54:00 [debug] 12152#1712: *3 close http connection: 616
2017/09/24 20:54:00 [debug] 12152#1712: *3 select del event fd:616 ev:0
2017/09/24 20:54:00 [debug] 12152#1712: *3 reusable connection: 0
2017/09/24 20:54:00 [debug] 12152#1712: *3 free: 00000000
2017/09/24 20:54:00 [debug] 12152#1712: *3 free: 0348D318, unused: 28
2017/09/24 20:54:00 [debug] 12152#1712: *1 event timer del: 608: 3062286802
2017/09/24 20:54:00 [debug] 12152#1712: *1 http keepalive handler
2017/09/24 20:54:00 [debug] 12152#1712: *1 close http connection: 608
2017/09/24 20:54:00 [debug] 12152#1712: *1 select del event fd:608 ev:0
2017/09/24 20:54:00 [debug] 12152#1712: *1 reusable connection: 0
2017/09/24 20:54:00 [debug] 12152#1712: *1 free: 00000000
2017/09/24 20:54:00 [debug] 12152#1712: *1 free: 033A81F8, unused: 28
/////////////////////////////////////////////////////////////// BOKEH JS Page source
OTICS WHAT-IF ENGINE
html {
width: 100%;
height: 100%;
}
body {
width: 90%;
height: 100%;
margin: auto;
}
···
On Sun, Sep 24, 2017 at 8:34 PM, Bryan Van de ven [email protected] wrote:
Two quick comments:
The extra location block is mentioned in passing in that doc, but not elaborated on. The basic config file there does not have a location block to intercept static resource URLS. Again, I would strongly suggest removing that second block that refers to “bokehstatic”, and reporting back.
I also somehow missed this is on Windows. None of the core devs happen to be windows users. The project sorely needs a windows maintainer but so far my occasional public calls to attract one have not proved fruitful. We do the best we can to test on windows but at present I definitely don’t know one way or the other if there are any special or different considerations for nginx+bokeh on windows specifically.
Thanks,
Bryan
On Sep 24, 2017, at 19:21, Sebastian Maurice [email protected] wrote:
I should note that this should not be complicated because i literally followed the nginx instructions here: https://bokeh.pydata.org/en/latest/docs/user_guide/server.html
So if someone can prove they can create interactive plots in Chrome or IE etc using nginx reverse proxy with bokeh server on windows 10 (64bit) with similar proxy details (over port 80 or 443) i would be a believer Bokeh actually works with nginx.
thanks
On Sun, Sep 24, 2017 at 8:07 PM, Sebastian Maurice [email protected] wrote:
Thats great. I will continue to bang my head trying to solve this…if i just cannot do it i will take you up on your suggestion. It is important i solve this. I even tried proxy through iis…and still no luck.
Bokeh is a probably the best integrated (with python) visualuzation i seen in data science.i would hate to give up on it because of this silly css/ js error.
Thank you again!
On Sep 24, 2017 7:08 PM, “Bryan Van de ven” [email protected] wrote:
If it’s possible for you to put things up in a public GH repo, I could try to actually run things to see if that sheds more light. However, I fly out early to a conference tomorrow and will be occupied every day all week, so it would not be until the week after that I could take a look.
Thanks,
Bryan
On Sep 24, 2017, at 17:46, Sebastian Maurice [email protected] wrote:
Thanks Bryan…i will play with this again tonight. i am not too confident it will work but will let the group know. if i need specifc Nginx group support will seek that group out.
On Sun, Sep 24, 2017 at 5:55 PM, Bryan Van de ven [email protected] wrote:
Clarify: that section has the effect of bypassing the Bokeh server
Bryan
On Sep 24, 2017, at 16:52, Bryan Van de ven [email protected] wrote:
I guess I should add: I am not an nginx expert, far from it. The sum total of what I know is pretty much contained in the user’s guide section I linked earlier. You may have better luck asking for help in some place that specifically has more people with nginx expertise.
Tho again, the quickest thing to try that I can suggest is to remove that second location block for “static” entirely.
When you run outside the proxy, the page is loading BokehJS static resources directly from the Bokeh server. That line has the effect of bypassing the Bokeh server. Removing that block should let the Bokeh server take care of providing BokehJS for page loads.
Bryan
On Sep 24, 2017, at 16:21, Bryan Van de ven [email protected] wrote:
I’m not suggesting not using a proxy in general, I am specifically referring to the “bokehstatic” redirects
Bryan
On Sep 24, 2017, at 15:37, Sebastian Maurice [email protected] wrote:
Interesting…i thought those were strange. Note i do go directly yo Bokeh server (without going through NGINX in the middle) and that works fine. i really do need the reverse proxy to work because several different users interact with the plot at the same time with different data. I have not looked at BokehJS… This is how the bokeh document is created (part of my code): I have it all working (without nginx - but with nginx i get the white screen)… ithere an easy way out from this maze?
Set up layouts and add to document
inputs = widgetbox(myobjs)
mainrow=column(plot,data_table)
mainrow2=row(mainrow,inputs)
if objcnt-1==0:
mainlayout=column(mainrow2)
curdoc().add_root(mainlayout)
else:
mainlayout.children[0]=column(mainrow2)
curdoc().title = “OTICS WHAT-IF ENGINE”
On Sun, Sep 24, 2017 at 4:12 PM, Bryan Van de ven [email protected] wrote:
A proximate cause of the problem (one of, there are possibly more) is certainly this:
Resource interpreted as Stylesheet but transferred with MIME type text/html: “http://www.analytix.ai:443/5007/static/css/bokeh.min.css/?v=aff472d598b101a4d4a4c214f39d9604”.
15:22:43.694 smaurice_5007:9 Resource interpreted as Stylesheet but transferred with MIME type text/html: “http://www.analytix.ai:443/5007/static/css/bokeh-widgets.min.css/?v=509e292d9a7ef7e9eb8382fcde7b4a6e”.
15:22:43.698 smaurice_5007:10 Resource interpreted as Stylesheet but transferred with MIME type text/html: “http://www.analytix.ai:443/5007/static/css/bokeh-tables.min.css/?v=aa783ffa4e290813a295a99cce2f8b5d”.
15:22:44.112 ?v=109998b11e3a484f5edd1d191d6338a2:1 Uncaught SyntaxError: Unexpected token <
15:22:44.122 ?v=1e7d9b3a9277b5d7b436fc82ac20197e:1 Uncaught SyntaxError: Unexpected token <
15:22:44.123 ?v=a167e11218858d6d2bcbcfdc21a84833:1 Uncaught SyntaxError: Unexpected token <
15:22:44.124 ?v=bd3543fa9b2c283463abffbdfcc78e36:1 Uncaught SyntaxError: Unexpected token <
15:22:44.125 smaurice_5007:17 Uncaught ReferenceError: Bokeh is not defined
The browser is not successfully loading BokehJS resources at all, so that would certainly explain nothing getting displayed.
I note that you are trying to have nginx load the static BokehJS resources instead of letting the Bokeh server itself server them. My guess is the is something amiss in this: either nginx is serving the wrong mime type, or the files you have copied to the nginx static location are missing or corrupt somehow, or something else entirely. Unfortunately, I am not an nginx expert so I can’t offer much more advice than to simply let Bokeh server serve the BokehJS resources, at least as a first experiment.
Bryan
On Sep 24, 2017, at 14:31, Sebastian Maurice [email protected] wrote:
Attached is the proxy conf:
server {
listen 443;
server_name [www.analytix.ai](http://www.analytix.ai);
charset utf-8;
client_max_body_size 30M;
access_log C:/CORE_FILES/nginxlog/access.log;
error_log C:/CORE_FILES/nginxlog/error.log debug;
#The internal IP of the VM that hosts your Apache config
location /{
if ( $request_uri ~ ^/(\d+)/([^/]+)) {
proxy_pass http://192.168.0.101:$1/$2/;
#proxy_pass /inetpub/wwwroot/T2A_WEBSITE/stocks/otics/oticslanding/test.php;
}
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host [www.analytix.ai](http://www.analytix.ai);
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
sub_filter "[192.168.0.101:5007](http://192.168.0.101:5007)" "[www.analytix.ai:443](http://www.analytix.ai:443)";
sub_filter_once off;
proxy_buffering off;
}
location ~ ^/(\d+)/static/ {
#location /static/ {
autoindex on;
alias /bokehstatic/static/;
}
}
On Saturday, September 23, 2017 at 6:44:44 PM UTC-4, Sebastian Maurice wrote:
Hi,
I have bee struggling with this problem for a few weeks, the problem is detailed here: https://stackoverflow.com/questions/46290307/bokeh-sever-with-nginx-gives-blank-white-screen
Anycase if i connect to Bokeh server directly over port 80 or 443, it is fine, it is when i connect via NGINX (using proxy_pass) to interval server, i connect to Bokeh but what i see on the website is a blanl white screen - this is page source from NGINX/BOKEH:
OTICS WHAT-IF ENGINE
html {
width: 100%;
height: 100%;
}
body {
width: 90%;
height: 100%;
margin: auto;
}
–
You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/7cb6944e-21e4-46a3-bc70-5bfc8442f884%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.
–
You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/A0570586-BB1F-451D-BE09-E8A2FB504D76%40anaconda.com.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.
–
Sebastian Maurice, PhD
Mobile: 403-612-5443
–
You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/CADZk7rFUD4_i_Q-5_XK6N0kFyOyhmnxAonwdmebc6QejwzfRgw%40mail.gmail.com.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.
–
You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/EA086083-72A8-4747-9D53-D7D4321C82E7%40anaconda.com.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.
–
Sebastian Maurice, PhD
Mobile: 403-612-5443
–
You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/CADZk7rEizVhvyuXLieHCGoCm3WcmFA9nemhajJn6RAWjYq7ZEw%40mail.gmail.com.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.
–
You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/3746B56F-B754-4E41-B64D-77B8A0AAE736%40anaconda.com.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.
–
Sebastian Maurice, PhD
Mobile: 403-612-5443
–
You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/CADZk7rGTAF_cJS-%2B%2BAzy48pXu661DSJ2LVO%3DdQvSw6YdJrJ3YA%40mail.gmail.com.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.
–
You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/AFFFF2F5-D197-49A4-80E5-5025F023491F%40anaconda.com.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.
–
Sebastian Maurice, PhD
Mobile: 403-612-5443