cmcooper1980 1 Posted July 2, 2019 Posted July 2, 2019 (edited) Hi all, I was wondering if anyone can suggest or have insight on how to correct my issue (if it is an issue). I have an NGINX reverse proxy for Emby with LetsEcrypt/Certbot SSL running on a Raspberry Pi 3B. All is working well, my only issue is that when I navigate to my DDNS site for Emby and load the dashboard to see what users are logged in and check the video they are watching, the progress timestamps AND progress bar/transcode bar DO NOT dynamically refresh/update. I have to either refresh the page/press F5 to update the progress info... What line or lines in nginx conf file would cause this (or need to be added to fix this)? When navigated to via localhost:8096, 127.0.0.1:8096, or machine IP xxx.xxx.xxx.xxx:8096 the dashboard's users' progress time, progress bar, and transcode progress update/refresh automatically every second... All relevant config data copy and pasted below. NGINX CONF FILE UNDER /etc/nginx/nginx.conf user www-data; worker_processes auto; pid /run/nginx.pid; include /etc/nginx/modules-enabled/*.conf; events { worker_connections 768; multi_accept on; use epoll; } http { ## # Basic Settings ## sendfile off; tcp_nopush on; tcp_nodelay on; client_body_timeout 10; client_header_timeout 10; keepalive_timeout 30; types_hash_max_size 2048; send_timeout 10; keepalive_requests 10; server_tokens off; server_names_hash_bucket_size 128; # server_name_in_redirect off; map_hash_bucket_size 64; include /etc/nginx/mime.types; default_type application/octet-stream; ## # SSL Settings ## ssl_protocols TLSv1.2; # Dropping SSLv3, ref: POODLE ssl_prefer_server_ciphers on; ## # Logging Settings ## access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; ## # Gzip Settings ## gzip on; gzip_disable "msie6"; gzip_vary on; gzip_proxied any; gzip_comp_level 6; gzip_min_length 1100; gzip_buffers 16 8k; gzip_http_version 1.1; gzip_types text/plain text/css text/js text/xml text/javascript application/json application/javascript application/x-javascript application/xml application/xml+rss application/x-font-ttf application/vnd.ms-fontobject font/opentype image/svg+xml image/x-icon; ## # Virtual Host Configs ## include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; } #mail { # # See sample authentication script at: # # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript # # # auth_http localhost/auth.php; # # pop3_capabilities "TOP" "USER"; # # imap_capabilities "IMAP4rev1" "UIDPLUS"; # # server { # listen localhost:110; # protocol pop3; # proxy on; # } # # server { # listen localhost:143; # protocol imap; # proxy on; # } #} CONFIGURATION FILE UNDER /etc/nginx/sites-available/rps.conf include /etc/nginx/sites-available/emby.conf; #several other services' config files included here CONFIGURATION FILE UNDER /etc/nginx/sites-available/emby.conf server { listen 80; server_name emby.MyDomainName.com; return 301 https://$server_name$request_uri; } server { server_name emby.MyDomainName.com; listen 443 ssl http2; include /etc/nginx/ssl_params; include /etc/nginx/xss_params; location / { proxy_pass http://192.xxx.xxx.xxx:8096; include /etc/nginx/backend_params; } location ~* ^.+\.(?:ico|css|js|json|gif|jpe?g|png|woff2)$ { proxy_pass http://192.xxx.xxx.xxx:8096; include /etc/nginx/expires_params; } location ~* (/|favicon\.ico|/public|/configuration)$ { proxy_pass http://192.xxx.xxx.xxx:8096; include /etc/nginx/expires_params; } } MODULARIZED REFERENCE BLOCKS UNDER /etc/nginx/ ###SSL_PARAMS### ssl on; ssl_certificate /etc/letsencrypt/live/MyDomainName.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/MyDomainName.com/privkey.pem; ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL; ssl_stapling on; resolver 8.8.8.8 8.8.4.4 valid=300s; resolver_timeout 5s; ssl_stapling_verify on; ssl_trusted_certificate /etc/letsencrypt/live/MyDomainName.com/chain.pem; keepalive_timeout 180; ssl_session_cache shared:SSL:20m; ssl_session_timeout 180m; ssl_dhparam /etc/letsencrypt/live/MyDomainName.com/dhparam.pem; ssl_ecdh_curve secp384r1; # This is for strict transport security HSTS add_header Strict-Transport-Security "max-age=31536000; includeSubdomains" always; add_header Public-Key-Pins 'pin-sha256="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx="; pin-sha256="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx="; pin-sha256="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx="; pin-sha256="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx="; max-age=2592000'; client_max_body_size 1024M; ###SSL_PARAMS### ###XSS_PARMS### add_header X-Xss-Protection "1; mode=block" always; add_header X-Content-Type-Options "nosniff" always; add_header X-Frame-Options "SAMEORIGIN" always; proxy_hide_header X-Powered-By; add_header 'Referrer-Policy' 'no-referrer-when-downgrade'; add_header Content-Security-Policy "frame-ancestors *.MyDomainName.com;"; add_header Expect-CT 'enforce; max-age=3600'; ###XSS_PARMS### ###BACKEND_PARAMS### # Send traffic to the backend proxy_set_header Range $http_range; proxy_set_header If-Range $http_if_range; 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_set_header X-Forwarded-Proto $scheme; proxy_redirect off; # Send websocket data to the backend aswell #proxy_http_version 1.1; #proxy_set_header Upgrade $http_upgrade; #proxy_set_header Connection "upgrade"; ###BACKEND_PARAMS### ###EXPIRES_PARAMS### expires 14d; add_header Pragma public; add_header Cache-Control "public"; ###EXPIRES_PARAMS### Thanks in advance! Edited July 2, 2019 by cmcooper1980
Luke 42080 Posted July 2, 2019 Posted July 2, 2019 @@pir8radio may have some tips about this. Thanks.
cmcooper1980 1 Posted July 2, 2019 Author Posted July 2, 2019 @@pir8radio may have some tips about this. Thanks. Thanks @Luke! Navigating to @pir8radio page and clicking the related link revealed I only needed to un-comment the block regarding the websocket data (thanks to his informative line comments "## WEBSOCKET SETTINGS ## Used to pass two way real time info to and from emby and the client.") 1
cmcooper1980 1 Posted July 2, 2019 Author Posted July 2, 2019 @@pir8radio may have some tips about this. Thanks. Thanks @Luke! Navigating to @pir8radio page and clicking the related link revealed I only needed to un-comment the block regarding the websocket data (thanks to his informative line comments "## WEBSOCKET SETTINGS ## Used to pass two way real time info to and from emby and the client.")
pir8radio 1312 Posted July 2, 2019 Posted July 2, 2019 Links on the profile for the win... lol Glad you figured it out!
Normanos 13 Posted May 4, 2022 Posted May 4, 2022 Thanks! Its works as well in Linux. Simply added added these lines to reverse proxy conf file: .... # Send websocket data to the backend aswell proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; .... 1
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now