Snapshots WebUI list not working in 9.10.1

Status
Not open for further replies.

cobrabyte

Cadet
Joined
Oct 17, 2016
Messages
3
Update: This has been attributed to using nginx to proxy to the FreeNAS GUI. I still believe this issue to be a bug, since it's the only grid within the FreeNAS GUI that has issues. I also use the same proxy for all of my jails and have had zero issues in those apps, as well. I use a proxy to provide a consistent SSL configuration for all my jails.

---

I'm running into an issue where the 'Storage > Snapshots' tab is not displaying the snapshots I currently have on my system. Instead, it's showing a list of ellipses.

reeSgs7.png


I can get an accurate list of the ZFS snapshots using the command line ( zfs list -t snapshot) but nothing in the Web UI.

I am about to file a bug report but I wanted to see if I'm missing something. (edit: filed bug report @ https://bugs.freenas.org/issues/18309)

I get the same results in Chrome and Firefox and I do have a Javascript error in each console:

Code:
"EXPERIMENTAL: dojox.timing -- APIs subject to change without notice." dojo.js:8:30587
"EXPERIMENTAL: dojox.layout.ResizeHandle -- APIs subject to change without notice." dojo.js:8:30587
"EXPERIMENTAL: dojox.grid.EnhancedGrid -- APIs subject to change without notice." dojo.js:8:30587
"EXPERIMENTAL: dojox.grid.TreeGrid -- APIs subject to change without notice." dojo.js:8:30587
Use of getAttributeNode() is deprecated. Use getAttribute() instead. dojo.js:8:0
Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help http://xhr.spec.whatwg.org/ dojo.js:8:0
TypeError: json is undefined
Stack trace:
acts@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/parser.js?7a70313fd57ae1018756e1e72e017bc9 line 60 > Function:24:1
_12<._defaultFormat@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/cells/_base.js?7a70313fd57ae1018756e1e72e017bc9:35:35
_12<.format@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/cells/_base.js?7a70313fd57ae1018756e1e72e017bc9:52:8
.cache["dojox/grid/_Builder"]/</dg._ContentBuilder<.generateHtml@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:142909
.cache["dojox/grid/_View"]/</_2b4<.buildRowContent@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:98504
.cache["dojox/grid/_View"]/</_2b4<.buildRow@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:98394
.cache["dojox/grid/_View"]/</_2b4<.updateRow@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:99445
.cache["dojox/grid/_ViewManager"]/</<.updateRow@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:159767
.cache["dojox/grid/_Grid"]/</_1a<.updateRows@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:12919
_4fb<._onFetchComplete@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:199946
_358/</_35e.around.advice@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:76439
_358/</_35e@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:76123
.cache["dojo/_base/lang"]/</lang.hitch/<@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:38821
.fetch/</<@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/data/ObjectStore.js?7a70313fd57ae1018756e1e72e017bc9:88:1
.cache["dojo/Deferred"]/</_2f8@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68328
.cache["dojo/Deferred"]/</_2f7/_305.then@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:70222
when@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:84505
.fetch/<@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/data/ObjectStore.js?7a70313fd57ae1018756e1e72e017bc9:78:1
_2d3@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65729
_2d1@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65421
.cache["dojo/_base/Deferred"]/</dojo.Deferred/this.callback@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:66486
_2d3@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65985
_2d1@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65421
.cache["dojo/_base/Deferred"]/</dojo.Deferred/this.callback@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:66486
_2d3@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:66129
_2d1@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65421
.cache["dojo/_base/Deferred"]/</dojo.Deferred/this.callback@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:66486
_2d3@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65985
_2d1@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65421
.cache["dojo/_base/Deferred"]/</dojo.Deferred/this.callback@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:66486
.cache["dojo/_base/xhr"]/</dojo.xhr/<@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:57951
.cache["dojo/Deferred"]/</_2f8@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68328
.cache["dojo/Deferred"]/</_2f2@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68192
.cache["dojo/Deferred"]/</_2f7/this.resolve@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:69653
.cache["dojo/Deferred"]/</_2fe@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68929
.cache["dojo/Deferred"]/</_2f8@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68544
.cache["dojo/Deferred"]/</_2f2@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68192
.cache["dojo/Deferred"]/</_2f7/this.resolve@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:69653
.cache["dojo/Deferred"]/</_2fe@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68929
.cache["dojo/Deferred"]/</_2f8@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68609
.cache["dojo/Deferred"]/</_2f2@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68192
.cache["dojo/Deferred"]/</_2f7/this.resolve@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:69653
.cache["dojo/Deferred"]/</_2fe@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68929
.cache["dojo/Deferred"]/</_2f8@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68544
.cache["dojo/Deferred"]/</_2f2@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68192
.cache["dojo/Deferred"]/</_2f7/this.resolve@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:69653
_408@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:90624
_415@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:91116
"acts@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/parser.js?7a70313fd57ae1018756e1e72e017bc9 line 60 > Function:24:1
_12<._defaultFormat@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/cells/_base.js?7a70313fd57ae1018756e1e72e017bc9:35:35
_12<.format@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/cells/_base.js?7a70313fd57ae1018756e1e72e017bc9:52:8
.cache["dojox/grid/_Builder"]/</dg._ContentBuilder<.generateHtml@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:142909
.cache["dojox/grid/_View"]/</_2b4<.buildRowContent@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:98504
.cache["dojox/grid/_View"]/</_2b4<.buildRow@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:98394
.cache["dojox/grid/_View"]/</_2b4<.updateRow@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:99445
.cache["dojox/grid/_ViewManager"]/</<.updateRow@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:159767
.cache["dojox/grid/_Grid"]/</_1a<.updateRows@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:12919
_4fb<._onFetchComplete@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojox/grid/DataGrid.js?7a70313fd57ae1018756e1e72e017bc9:2:199946
_358/</_35e.around.advice@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:76439
_358/</_35e@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:76123
.cache["dojo/_base/lang"]/</lang.hitch/<@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:38821
.fetch/</<@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/data/ObjectStore.js?7a70313fd57ae1018756e1e72e017bc9:88:1
.cache["dojo/Deferred"]/</_2f8@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68328
.cache["dojo/Deferred"]/</_2f7/_305.then@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:70222
when@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:84505
.fetch/<@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/data/ObjectStore.js?7a70313fd57ae1018756e1e72e017bc9:78:1
_2d3@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65729
_2d1@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65421
.cache["dojo/_base/Deferred"]/</dojo.Deferred/this.callback@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:66486
_2d3@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65985
_2d1@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65421
.cache["dojo/_base/Deferred"]/</dojo.Deferred/this.callback@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:66486
_2d3@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:66129
_2d1@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65421
.cache["dojo/_base/Deferred"]/</dojo.Deferred/this.callback@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:66486
_2d3@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65985
_2d1@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:65421
.cache["dojo/_base/Deferred"]/</dojo.Deferred/this.callback@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:66486
.cache["dojo/_base/xhr"]/</dojo.xhr/<@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:57951
.cache["dojo/Deferred"]/</_2f8@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68328
.cache["dojo/Deferred"]/</_2f2@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68192
.cache["dojo/Deferred"]/</_2f7/this.resolve@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:69653
.cache["dojo/Deferred"]/</_2fe@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68929
.cache["dojo/Deferred"]/</_2f8@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68544
.cache["dojo/Deferred"]/</_2f2@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68192
.cache["dojo/Deferred"]/</_2f7/this.resolve@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:69653
.cache["dojo/Deferred"]/</_2fe@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68929
.cache["dojo/Deferred"]/</_2f8@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68609
.cache["dojo/Deferred"]/</_2f2@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68192
.cache["dojo/Deferred"]/</_2f7/this.resolve@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:69653
.cache["dojo/Deferred"]/</_2fe@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68929
.cache["dojo/Deferred"]/</_2f8@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68544
.cache["dojo/Deferred"]/</_2f2@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:68192
.cache["dojo/Deferred"]/</_2f7/this.resolve@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:69653
_408@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:90624
_415@https://freenas.local:5050/dojango/dojo-media/release/1.11.1/dojo/dojo.js?cache=7a70313fd57ae1018756e1e72e017bc9:8:91116
" dojo.js:8:72578

TypeError: json is undefined parser.js:24:0
 
Last edited:
D

dlavigne

Guest
Is this on U2? If so, please create a bug report at bugs.freenas.org and post the issue number here.
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
Works fine here:
localization.PNG


That is, except for the weird fact that some UI elements are in Portuguese for no apparent reason. Must be IE/Edge sending stupid language requests that FreeNAS stupidly partially accepts. Doesn't happen in Firefox...
 

cobrabyte

Cadet
Joined
Oct 17, 2016
Messages
3
I updated the first post to reflect the underlying difference in my setup: an nginx proxy.

Here's my nginx configuration if anyone can spot something that might be causing this issue.

Thanks!

nginx.conf:

Code:
# user nobody;
worker_processes auto;
pid /var/run/nginx.pid;

events {
  worker_connections 1024;
  multi_accept on;
}

http {
  include mime.types;
  default_type application/octet-stream;

  sendfile on;
  tcp_nopush on;
  tcp_nodelay on;

  keepalive_timeout 15;
  client_body_timeout 30;
  client_header_timeout 30;
  send_timeout 30;
  client_max_body_size 64m;

  error_log /usr/local/etc/nginx/logs/error.log warn;
  access_log /usr/local/etc/nginx/logs/access.log;

  gzip on;
  gzip_disable "msie6";
  gzip_vary on;
  gzip_proxied any;
  gzip_comp_level 6;
  gzip_http_version 1.1;
  gzip_min_length 256;
  gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;

  server_tokens off;

  proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;
  proxy_read_timeout 300;
  proxy_send_timeout 300;
  proxy_connect_timeout 300;
  proxy_redirect off;
  proxy_http_version 1.1;

  ssl_certificate /media/ssl/server.crt;
  ssl_certificate_key /media/ssl/server.key;
  ssl_trusted_certificate /media/ssl/chain.pem;
  ssl_dhparam /usr/local/etc/nginx/dhparam.pem;
  ssl_session_cache shared:SSL:10m;
  ssl_session_timeout 5m;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
  ssl_ecdh_curve secp384r1;
  ssl_session_tickets off;
  ssl_prefer_server_ciphers on;
  ssl_stapling on;

  resolver 8.8.8.8 8.8.4.4 216.146.35.35 216.146.36.36 valid=300s;
  resolver_timeout 5s;

  add_header X-Frame-Options "SAMEORIGIN";
  add_header X-Content-Type-Options "nosniff";
  add_header X-XSS-Protection "1; mode=block";

  upstream sonarr {
	server 192.168.1.9:8989;
	keepalive 512;
  }

  upstream sabnzbd {
	server 192.168.1.3:80;
	keepalive 512;
  }

  upstream couchpotato {
	server 192.168.1.2:5000;
	keepalive 512;
  }

  upstream plexpy {
	server 192.168.1.13:8181;
	keepalive 512;
  }

  upstream freenas {
	server 192.168.1.21:80;
	keepalive 512;
  }

  server {
	listen 80 default_server;
	listen [::]:80 default_server;
	server_name _;
	return 301 https://$host$request_uri;
  }

  server {
	listen 443 ssl http2;
	listen [::]:443 ipv6only=on ssl http2;
	server_name externaldomain.com;

	ssl on;

	access_log  /var/log/nginx/external_access.log;
	error_log   /var/log/nginx/external_error.log;

	root /root/freenas-proxy/public;

	location / {
	  auth_basic "Restricted Area";
	  auth_basic_user_file /media/ssl/htpasswd;

	  try_files $uri $uri/ /index.html;
	}

	# redirect non-SSL to SSL
	error_page 497 https://$host:$server_port$request_uri;
  }

  server {
	listen 5000 ssl http2;
	listen [::]:5000 ipv6only=on ssl http2;
	server_name couchpotato.local;

	ssl on;

	access_log  /var/log/nginx/couchpotato_access.log;
	error_log   /var/log/nginx/couchpotato_error.log;

	location / {
	  include	 /root/freenas-proxy/nginx-ssl-block.conf;
	  proxy_pass  http://couchpotato;
	}

	error_page 497 https://$host:$server_port$request_uri;
  }

  server {
	listen 5050 ssl http2;
	listen [::]:5050 ipv6only=on ssl http2;
	server_name freenas.local;

	ssl on;

	access_log  /var/log/nginx/freenas_access.log;
	error_log   /var/log/nginx/freenas_error.log;

	location / {
	  include	 /root/freenas-proxy/nginx-ssl-block.conf;
	  proxy_pass  http://freenas;
	}

	error_page 497 https://$host:$server_port$request_uri;
  }

  server {
	listen 8080 ssl http2;
	listen [::]:8080 ipv6only=on ssl http2;
	server_name sabnzbd.local;

	ssl on;

	access_log  /var/log/nginx/sabnzbd_access.log;
	error_log   /var/log/nginx/sabnzbd_error.log;

	location / {
	  include	 /root/freenas-proxy/nginx-ssl-block.conf;
	  proxy_pass  http://sabnzbd;
	}

	error_page 497 https://$host:$server_port$request_uri;
  }

  server {
	listen 8081 ssl http2;
	listen [::]:8081 ipv6only=on ssl http2;
	server_name sonarr.local;

	ssl on;

	access_log  /var/log/nginx/sonarr_access.log;
	error_log   /var/log/nginx/sonarr_error.log;

	location / {
	  include	 /root/freenas-proxy/nginx-ssl-block.conf;
	  proxy_pass  http://sonarr;
	}

	error_page 497 https://$host:$server_port$request_uri;
  }

  server {
	listen 8181 ssl http2;
	listen [::]:8181 ipv6only=on ssl http2;
	server_name plexpy.local;

	ssl on;

	access_log  /var/log/nginx/plexpy_access.log;
	error_log   /var/log/nginx/plexpy_error.log;

	location / {
	  include	 /root/freenas-proxy/nginx-ssl-block.conf;
	  proxy_pass  http://plexpy;
	}

	error_page 497 https://$host:$server_port$request_uri;
  }
}


nginx-ssl-block.conf:

Code:
auth_basic "Restricted Area";
auth_basic_user_file /media/ssl/htpasswd;

gzip off;

proxy_set_header	Host				$http_host;
proxy_set_header	X-Real-IP		   $remote_addr;
proxy_set_header	X-Forwarded-Ssl	 on;
proxy_set_header	X-Forwarded-For	 $proxy_add_x_forwarded_for;
proxy_set_header	X-Forwarded-Proto   $scheme;
proxy_set_header	X-Frame-Options	 SAMEORIGIN;
 
Status
Not open for further replies.
Top