Jump to content

Search the Community

Showing results for tags 'reverse proxy'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • General
    • Announcements
    • Emby Premiere Purchase/Subscription Support
    • Feature Requests
    • Tutorials and Guides
  • Emby Server
    • General/Windows
    • Android Server
    • Asustor
    • FreeBSD
    • Linux
    • NetGear ReadyNAS
    • MacOS
    • QNAP
    • Synology
    • TerraMaster NAS
    • Thecus
    • Western Digital
    • DLNA
    • Live TV
  • Emby Apps
    • Amazon Alexa
    • Android Mobile
    • Android TV / Fire TV
    • Emby Theater
    • iOS
    • Apple TV
    • Kodi
    • Raspberry Pi
    • Roku
    • Samsung Smart TV
    • Sony PlayStation
    • LG Smart TV
    • Web App
    • Windows Media Center
    • Plugins
  • Language-specific support
    • Arabic
    • Dutch
    • French
    • German
    • Italian
    • Portuguese
    • Russian
    • Spanish
    • Swedish
  • Community Contributions
    • Ember for Emby
    • Fan Art & Videos
    • Tools and Utilities
    • Web App CSS
  • Other
    • General Discussion
    • Developer API
    • Hardware
    • Media Clubs
    • Legacy Support

Blogs

  • Emby Blog

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

  1. It took me a while to get Caddy v2 setup and working by itself. Then there were some struggles with getting it to work with Cloudflare. I thought I would share a guide to assist those who want to go that route. Prerequisites: Have your own domain Have the DNS of your domain setup with Cloudflare Have your Cloudflare API key/token "For this checkout my other article on setting up DNS updates via API" Have your Emby server set with a static internal IP Step 1: Download Caddy Visit https://caddyserver.com/download to download your binary. You will need to add a couple plugins for this to work. You will want to select 'caddy-dns/cloudflare' and 'kirsch33/realip' Review at the top that it shows "Extra features = 2' and select 'Download' Step 2: Download NSSM from https://nssm.cc/download "We will use this to run Caddy as a service" Step 3: Create folders for NSSM and Caddy on the root of the C:\ drive Step 4: Rename the caddy binary to just caddy.exe and put it in C:\Caddy\. Extract NSSM so you just have the nssm.exe and put that in your NSSM folder. Step 5: Create your caddyfile The caddyfile has no extension. You can open this with your favorite text editor. I use Notepad++. Below is the a sample caddyfile. The first email is the email address that you want to use to receive notifications if there are issues with the cert Adjust your domain to what you are using for Emby. Either 'domain.com', 'login.domain.com' or 'emby.domain.com' etc. The second email address is your email address for your Cloudflare account This also sets up logging for the reverse proxy which is really handy I choose to use the actual IP address of the server instead of localhost. Either will work. { email email@gmail.com } yourdomain.com { tls email@gmail.com { dns cloudflare 'Your Cloudflare API Key No Quotes' } log { output file C:\caddy\logs\emby_access.log { roll true # Rotate logs, enabled by default roll_size_mb 10 # Set max size X MB roll_gzip true # Whether to compress rolled files roll_local_time true # Use localhost time roll_keep 3 # Keep at most X log files roll_keep_days 7 # Keep log files for X days } } encode gzip reverse_proxy http://10.0.0.5:8096 { header_up X-Real-IP {remote_host} } } If you wanted to run any of the arr's as subsites to your main reverse proxy you can add the following to your caddyfile If you are running it on the same box instead of using the full domain name you would just use http://yourip:port You need to login to each of the arr applications and setup the base URL Login go to settings/general/base url Add the correct subsite. So for Radarr you would add /movies save and restart. { email email@gmail.com } yourdomain.com { tls email@gmail.com { dns cloudflare 'Your Cloudflare API Key No Quotes' } log { output file C:\caddy\logs\emby_access.log { roll true # Rotate logs, enabled by default roll_size_mb 10 # Set max size X MB roll_gzip true # Whether to compress rolled files roll_local_time true # Use localhost time roll_keep 3 # Keep at most X log files roll_keep_days 7 # Keep log files for X days } } encode gzip reverse_proxy http://10.0.0.5:8096 { header_up X-Real-IP {remote_host} } reverse_proxy /movies/* https://radarr.domain.com { header_up Host {upstream_hostport} header_up X-Forwarded-Host {host} } redir /movies /movies/ reverse_proxy /tv/* https://sonarr.domain.com { header_up Host {upstream_hostport} header_up X-Forwarded-Host {host} } redir /tv /tv/ reverse_proxy /music/* https://lidarr.domain.com { header_up Host {upstream_hostport} header_up X-Forwarded-Host {host} } redir /music /music/ reverse_proxy /audiobooks/* https://readarr.domain.com { header_up Host {upstream_hostport} header_up X-Forwarded-Host {host} } redir /audiobooks /audiobooks/ } Step 6: Create a user for caddy to run as and set password. You will need this password later down when we setup the service. I'm going to use srvcaddy. Step 7: Allow srvcaddy user to run as service You want to open up Local Security Policy Go to 'Local Policies/User Rights Assignment/Log on as a service' and add our new user srvcaddy Step 8: Add your domain under Emby network settings Login go to settings/network/external domain and add your domain name Step 9 : Launch cmd prompt as administrator Step 10: Install Caddy as a service We will need to type cd "C:\NSSM" in cmd prompt. Then you will need to type nssm install Caddy We will want to edit Log on to our service account Then select 'Install service' Now you can open up services and start caddy The first time this runs it will take a few minutes to generate your certificate on the computer. Step 11: Adjust firewall rules You now only want the local computer to talk on Emby's port 8096. All other devices you will want to have it connect via ports 80,443. Open up windows firewall Make sure all of Emby's rules are disabled Create a new rule Step 12: Create a port forward in your router/firewall from external port 443 to your server port 443. Do to the differences in every router/firewall you will need to refer to manual or Google on this step. For even more security you can lock down only Cloudflare's IP addresses to be able to route to your server. Since we are updating the cert via API you only need port 443 open to Cloudflare. No need for port 80 to be open external. Step 13: Create a DNS entry in your router/firewall for your server. Again do to to many differences you will need to consult your device's manual or google on how to accomplish this. You will want to create an internal record that takes your domain name for your Emby server and points it to the local IP. This way you can take advantage of local login with pin. Step 14: Set Cloudflare's SSL/TLS Encryption Login to Cloudflare, select your domain, and go to SSL/TLS You want to set this to Full/Strict That's it... you should now have a fully encrypted connection to your Emby server internal and external. You will now be connecting to your server via port 443 instead of 8096. Hope this helps anyone struggling with setting this up.
  2. sagefallon

    Missing image from Continue Watching

    This was working, however all of a sudden the image is blank on the Continued Watching tile for any movie I watch. Any ideas on why this may have started happening? Is this a setting or a configurable item? My setup is emby in docker on synology using let's encrypt, reverse proxy and https.
  3. This guide will explain how to setup a Windows Server instance of Emby server with IIS as full transparent reverse proxy with SSL offload and auto-renewing certificates via Lets Encrypt. First, What is IIS? IIS or Internet Information Services is the web server service provided with Windows and Windows server installations. It is industry standard technology and is widely supported and regularly maintained by Microsoft. Second, What is a reverse proxy? A reverse proxy will take requests coming into your server (in this case HTTPS on port 443) and route them to a backend application (in this case Emby Server on port 8096 on the same box or another). Reverse proxies are very useful if you only have 1 public IP and multiple services you would like to run on a single port (443, for example is standard secure web traffic) or multiple servers that need to appear as one. Third, Why do I want a certificate for my site from Lets Encrypt? Well, most sites now days are secure (read they encrypt your traffic to prevent people from seeing your data), browsers these days flag sites that are not using properly signed certificate chains or run on insecure ports. If you use a self signed certificate in Emby, you may have difficulty getting things like the iOS app or Roku app to work properly outside your home. (Not sure about the rest of you, but Emby on the kid’s iPad is a life saver for long car rides). Let’s Encrypt provides free SSL certificates that are signed by certificate authorities that will be recognized on all devices and platforms. I will be using Windows Server 2019 with IIS 10 and AAR 3. All of this should work with Windows Server 2012R2 and Windows Server 2016 as well as Windows 10, however there may be some differences. You can use either stable or beta version of Emby Server, however in this guide we will use the stable version. At the time of writing, this guide will get you a full A+ rating from SSLlabs.com security test. (For comparison purposes, Facebook’s rating is a B.) In this guide we will: Install Emby Server Move Emby Server Installation to a non-user-locked location Setup a service user to run Emby Server as Configure Emby Server to run as a service Configure Windows Firewall Install IIS Install AAR Install IIS Rewrite module Configure AAR Configure IIS as a reverse proxy for Emby Configure SSL cypher suites for the server Install the Certify the Web client. Configure Certify the Web for auto-renewing SSL certificate for your domain Note: To be externally accessible, you will need to configure your route/modem to port forward 80 and 443 to your server. Pre-reqs/Assumptions: A physical server or VM running Windows Server An Internet Connection A DynDNS/No-IP URL (or similar routable dns name pointed at your router’s public IP) You have port forwarded ports 80 and 443 through your router to the machine you will use as a reverse proxy (in this guide we will use the same box for the reverse proxy and Emby server, but these can be run on different hosts). You have installed Notepad++ on the machine you will be setting up. Install Emby Server Download Emby Server Run the Installer Click Run when prompted If prompted by smart screen, click run anyway If prompted to install Visual C++ runtime, click install It will install to default location of %APPDATA%\Emby-Server. Move Emby Server to Non-User Locked Location Ensure that Emby Server is not running (right click icon in system tray if present and click Exit) Navigate to default location of %APPDATA% (%userprofille%\appdata\roaming) Right click the folder and click "cut" Navigate to C:\ (or root of the drive you wish to have Emby run from) Right click in the whitespace and paste. (if prompted to provide administrator permission, approve) Create a Service Account to run Emby as Note: Instructions show how to do this using local users and computers, you can also do this with Active Directory Users and Computers if your server is running that role. Right click on the start button (Windows flag) on the left side of the task bar Click Computer Management Expand Local Users and Groups on the left side Click Users Right click the whitespace and click new user Complete the new user dialog as shown (make sure you save whatever password you use as you will need it later, ProTip: don't re-use passwords) Click create Click close Close the computer management window Setup NSSM NSSM (Non-Sucking Service Manager) is needed to run Emby Server as a service as Emby Server does not include the nessicary components to run as a Windows service by default. Download here: https://nssm.cc/download Double click downloaded zip to open it in windows explorer Navigate to /win64 folder inside zip Copy/extract 64 bit version of the file to C:\Emby-Server Setup Folder Permissions Navigate to C:\ Right click the Emby-Server folder Click Properties Click Security tab Click Advanced Click Disable Inheritance Click Convert to Explicit Select CREATOR OWNER Click Remove Select Users (special) Click Remove Click Add Enter SvcEmby in the dialog Click OK Click Full Control Click OK Click Change next to owner at the top of the box Type SvcEmby in the dialog Click OK Check the Replace owner check box Check the Replace permissions checkbox Verify the dialog window looks similar to this (computer name will be different) Click OK When prompted if you want to replace permissions click Yes Verify security tab looks like this Click OK Setup Emby as a Service using NSSM Right click the start button on the left side of the task bar Click Windows Powershell (Admin) Type: "cd C:\Emby-Server" and press enter Type ".\nssm.exe install Emby" and press enter The install service dialog will launch, fill out as follows: Application Tab Details Tab Logon Tab (note, if you are using active directory it should be: YOURDOMAIN\SvcEmby) Exit Actions Tab Click Install Service Click OK Config ure Windows Firewall Click Start Click Control Panel Click Windows Defender Firewall Click Advanced Settings on the left hand side Click Inbound Rules Click New Rule on the right hand side Click Port Click Next Type 80, 443 in the ports box Click Next Click Next Click Next Name it Web Server Ports Click Finish Install IIS (Internet Information Services) Click Start Click Server Manager Click Add Roles and Features Click next on the Before you Begin page Click Role Based install Click Next Verify you are installing on your local server Click Next Check the box for "Web Server (IIS)" When prompted to install management tools Click Add Features Click Next Under Features, click Next Click Next again to get to role services Check the boxes for all of the following role services Make sure you check the box for web sockets under Application Development, this is needed for various features of Emby to work right. Click Next Click Install Once installation completes, click close Install Web Platform Installer add-on Download from: https://www.microsoft.com/web/downloads/platform.aspx Run the Web Platform Installer add-on installer Click Install Click Finish Install AAR (Advanced Application Routing) Download from: https://www.microsoft.com/en-us/download/details.aspx?id=47333 Run the Request Router installer Click Install Install IIS Re-Write Module Click Start Click Administrative Tools Open Internet Information Services (IIS) Manager Click the name of your server on the left Double Click on the Web Platform Installer In the search box type "url rewrite" Click Add Click Install Click I Agree Click Finish Configure AAR Click Start Click Administrative Tools Open Internet Information Services (IIS) Manager Click the name of your server on the left Right Click Server Farms Click Create Server Farm Name your Server Farm Click Next Enter the IP address of the server or "localhost" Click Add Click Finish Click No in the dialog that pops up Expand your newly created Server Farm Click Proxy Configure settings as shown Click Apply Click your Server Click Application Request Routing Click Server Proxy Settings Configure settings as shown Click Apply Click Your Server Configure IIS Server Variables Click Url Re-Write Click View Server Variables Click Add Type "HTTP_ACCEPT_ENCODING" Click OK Click Add Type "HTTP_X_ORIGINAL_ACCEPT_ENCODING" Click OK Click Add Type "HTTP_X_FORWARDED_FOR" Click OK Click Add Type "HTTP_X_REAL_IP" Click OK Click Your Server Create Emby Site Expand Sites on the left hand side Right Click "Default Web Site" Highlight "Manage Website" Click Stop Right Click the white space in the Sites list Click Add Website Click the "..." button to the right of Physical Path Browse to C:\inetpub\wwwroot Click it Click Make New Folder Call it Emby Click OK Under Binding Fill in with your public host name (see dynamic dns mentioned in pre-reqs) Click OK Configure Logging Click your server Click Logging Click Select Fields Click Add Field Configure as shown Click OK Click OK Click Apply Install and Configure Certify The Web client Download From: https://certifytheweb.com Run the Certify the Web installer Click Next Click Next Click Next Click Install Click Finish Click New Certificate Click on on Contact Prompt Fill in your contact email Click Register Contact Click New Certificate again Select Emby from the sites list Name and domain will populate automatically. Click Deployment Configure as shown Complete certificate verification process Click your site in IIS manager Click Bindings Verify there is an HTTPS binding and that it looks similar to this (with your domain information) Edit Web.Config for Emby Site Click HTTP Response Headers Click Add Configure as show (we are just creating a header to get the web.config to exist, we will paste in a premed one below, so these values dont really matter) Click OK Open an Explorer window and Browse to C:\inetpub\wwwroot\Emby Right click web.config and Edit with Notepad++ Replace existing content with web.config below <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <clear></clear> <rule name="Redirect to https" enabled="true" patternSyntax="Wildcard" stopProcessing="true"> <match url="*" negate="false" /> <conditions logicalGrouping="MatchAny"> <add input="{HTTPS}" pattern="off" /> </conditions> <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Found" /> </rule> <rule name="Proxy to Emby" stopProcessing="false"> <match url="(.*)" /> <serverVariables> <set name="HTTP_X_ORIGINAL_ACCEPT_ENCODING" value="{HTTP_ACCEPT_ENCODING}" /> <set name="HTTP_ACCEPT_ENCODING" value="" /> <set name="HTTP_X_REAL_IP" value="{REMOTE_ADDR}" /> </serverVariables> <action type="Rewrite" url="http://localhost:8096/{R:1}" logRewrittenUrl="true" /> <conditions> <add input="/{R:1}" pattern=".well-known" negate="true" /> </conditions> </rule> </rules> <outboundRules> <rule name="Add Strict-Transport-Security when HTTPS" enabled="true"> <match serverVariable="RESPONSE_Strict_Transport_Security" pattern=".*" /> <conditions> <add input="{HTTPS}" pattern="on" /> </conditions> <action type="Rewrite" value="max-age=31536000; includeSubDomains; preload" /> </rule> <rule name="Proxy to Emby" preCondition="ResponseIsHtml1" enabled="true"> <match filterByTags="A, Area, Base, Form, Frame, Head, IFrame, Img, Input, Link, Script" pattern="^http(s)?://http://localhost:8096/(.*)" /> <action type="Rewrite" value="http{R:1}://media.example.com/{R:2}" /> </rule> <rule name="Restore-AcceptEncoding" preCondition="NeedsRestoringAcceptEncoding"> <match serverVariable="HTTP_ACCEPT_ENCODING" pattern="^(.*)" /> <action type="Rewrite" value="{HTTP_X_ORIGINAL_ACCEPT_ENCODING}" /> </rule> <preConditions> <preCondition name="ResponseIsHtml1"> <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/(.+)" /> </preCondition> <preCondition name="NeedsRestoringAcceptEncoding"> <add input="{HTTP_X_ORIGINAL_ACCEPT_ENCODING}" pattern=".+" /> </preCondition> </preConditions> </outboundRules> </rewrite> <caching enabled="false" enableKernelCache="false" /> <httpProtocol> <customHeaders> <add name="X-Frame-Options" value="SAMEORIGIN" /> <add name="X-Xss-Protection" value="1; mode=block" /> <add name="X-Content-Type-Options" value="nosniff" /> <add name="Referrer-Policy" value="same-origin" /> <add name="Feature-Policy" value="sync-xhr 'self'" /> <add name="Cache-Control" value="no-cache" /> </customHeaders> </httpProtocol> </system.webServer> </configuration> Save changes (if prompted to restart Notepad++ in admin mode allow it and then try saving again) IIS will now be properly configured as a reverse proxy for Emby. Under IIS Manager > Rewrite you should now see the following rules: Configure Server Cyphers Download here: https://www.nartac.com/Products/IISCrypto/Download (GUI version) Run the IISCrypto too Click Templates In the template drop down box, select PCI 3.2 This will disable IIS from being able to serve via SSL 2.0, 3.0; TLS 1.0 and TLS 1.1. This will leave just the industry standard TLS 1.2. Click Apply Click OK. Reboot your server. Emby Internal Settings Navigate to your server via the localhost:8096 address Click the gear in the top right corner Click Network from the list of tabs on the right Configure as shown (use your hostname in the external domain box) Conclusion Upon rebooting your computer will start IIS services and Emby server as a service. Traffic coming in on port 80 (if someone just types your url without HTTPS in their browser's address bar) will be automatically redirected to port 443 and the HTTPS:// version of your host name. Your certificate will auto-renew every so often and re-bind to the site in IIS without any interaction on your part. This allows for a server that you can for the most part setup, and forget about and just manage your Emby installation via its web ui. There are a lot of ways to set up Emby server depending on your environment and other factors. For my environment this made the most sense and since large portions of this took quite a bit of digging and research to get working just right, I figured Id make someone else's life a little easier if they were trying to do something similar. These instructions can be adapted for Windows Server 2012 R2, Windows Server 2016, Windows 8 and Windows 10. In the end browsing to your domain should look like this in the browser Additional Information for Updating When Updating your Emby installation. Simply stop the service for Emby, install like you normally would, then just cut the system folder inside the %appdata%\emby-server folder and paste it into the C:\Emby-Server folder. When prompted replace all files, then start the service again once the copy completes. Additional Information about Connecting with Emby Apps When connecting to your Emby installation remotely with Emby apps remember to prefix your domain name with https:// and use 443 for the port number. <Edit> Additional Information about changing Emby Server Title: For those users who wish to change their page title in browser (as discussed here), here is additional Web.Config information that will let you do just that! Using IIS Re-Write rules to change the page title means, you don't have to edit files to reset it every time you upgrade your Emby Server! Add these 3 rules at the bottom of the rules list, replace whole <preConditions> block too.: NOTE: Make sure you replace ALL 4 instances of NAME_OF_YOUR_SERVER with what you want your server to display in the tab bar. <rule name="RewriteTitle" preCondition="ResponseIsHtml1" enabled="true"> <match filterByTags="None" pattern="&lt;title>(.*)&lt;/title>" /> <action type="Rewrite" value="&lt;title>NAME_OF_YOUR_SERVER&lt;/title>" /> </rule> <rule name="RewriteAppHeaderJs" preCondition="ResponseIsJS" enabled="true"> <match filterByTags="None" pattern="document.title=&quot;Emby&quot;" /> <action type="Rewrite" value="document.title=&quot;NAME_OF_YOUR_SERVER&quot;" /> </rule> <rule name="RewriteAppHeaderJs2" preCondition="ResponseIsJS" enabled="true"> <match filterByTags="None" pattern="title.Name||&quot;Emby&quot;:&quot;Emby&quot;" /> <action type="Rewrite" value="title.Name||&quot;NAME_OF_YOUR_SERVER&quot;:&quot;NAME_OF_YOUR_SERVER&quot;" /> </rule> <preConditions> <preCondition name="ResponseIsHtml1"> <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/(.+)" /> </preCondition> <preCondition name="ResponseIsJS"> <add input="{RESPONSE_CONTENT_TYPE}" pattern="application/javascript|text/javascript" /> </preCondition> <preCondition name="NeedsRestoringAcceptEncoding"> <add input="{HTTP_X_ORIGINAL_ACCEPT_ENCODING}" pattern=".+" /> </preCondition> </preConditions> </Edit>
  4. Hey, Hoping someone can help me with this. I use IIS/AAR to reverse proxy Emby to be publicly accessible and handle SSL offload. I have had everything working beautifully for quite sometime with one small exception. The client IPs in the Admin Dashboard all show ::1 regardless of where the user signs in from (tested using cellular and my little brothers computer in another state). I have verified that X-Forwarded-For and the client's IP are showing correctly in the logs for IIS however they do not display in the dashboard. My stack is: Windows Server 2019 IIS 10 AAR 3 Flow is: Internet -> IIS -> Emby My Web.Config looks like: <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <clear></clear> <rule name="Redirect to https" enabled="true" patternSyntax="Wildcard" stopProcessing="true"> <match url="*" negate="false" /> <conditions logicalGrouping="MatchAny"> <add input="{HTTPS}" pattern="off" /> </conditions> <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Found" /> </rule> <rule name="Proxy to Emby" stopProcessing="true"> <match url="(.*)" /> <serverVariables> <set name="HTTP_X_ORIGINAL_ACCEPT_ENCODING" value="{HTTP_ACCEPT_ENCODING}" /> <set name="HTTP_ACCEPT_ENCODING" value="" /> </serverVariables> <action type="Rewrite" url="http://localhost:8096/{R:1}" /> </rule> </rules> <outboundRules> <rule name="Add Strict-Transport-Security when HTTPS" enabled="true"> <match serverVariable="RESPONSE_Strict_Transport_Security" pattern=".*" /> <conditions> <add input="{HTTPS}" pattern="on" /> </conditions> <action type="Rewrite" value="max-age=31536000; includeSubDomains; preload" /> </rule> <rule name="Proxy to Emby" preCondition="ResponseIsHtml1" enabled="true"> <match filterByTags="A, Area, Base, Form, Frame, Head, IFrame, Img, Input, Link, Script" pattern="^http(s)?://http://localhost:8096/(.*)" /> <action type="Rewrite" value="http{R:1}://publicurl.mydomain.com/{R:2}" /> </rule> <rule name="Restore-AcceptEncoding" preCondition="NeedsRestoringAcceptEncoding"> <match serverVariable="HTTP_ACCEPT_ENCODING" pattern="^(.*)" /> <action type="Rewrite" value="{HTTP_X_ORIGINAL_ACCEPT_ENCODING}" /> </rule> <preConditions> <preCondition name="ResponseIsHtml1"> <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/(.+)" /> </preCondition> <preCondition name="NeedsRestoringAcceptEncoding"> <add input="{HTTP_X_ORIGINAL_ACCEPT_ENCODING}" pattern=".+" /> </preCondition> </preConditions> </outboundRules> </rewrite> <caching enabled="false" enableKernelCache="false" /> <httpProtocol> <customHeaders> <add name="X-Frame-Options" value="SAMEORIGIN" /> <add name="X-Xss-Protection" value="1; mode=block" /> <add name="X-Content-Type-Options" value="nosniff" /> <add name="Referrer-Policy" value="same-origin" /> <add name="Feature-Policy" value="sync-xhr 'self'" /> <add name="Cache-Control" value="no-cache" /> </customHeaders> </httpProtocol> </system.webServer> </configuration> As I said, feature-wise everything works fantastic, it does appear that the bit-rate limiting for external streams does not apply due to this either. Thanks in advance!
  5. Inspired by this article on how to host a website using cloudflare and nginx, i intend to do the same for my emby server. Like swynol, i have nginx server and emby server running on the very same machine which i station on my local home network. My OS however is ubuntu instead of windows. Ive tried both swynol's and lukecarrier's github codes, no avail, it wont redirect to the emby server no matter what. My nginx server was indeed running as both ports 80 and 443 are opened as tested by canyouseeme.org. It just wont redirect whenever i go to https://emby.mydomainname.com I dont even know where should i put the code, of the guides online, some say /etc/nginx/conf.d/mydomain.com, some say /etc/nginx/sites-available/mydomain.com with /etc/nginx/sites-enabled linked to earlier. I highly suspect that the code is the culprit. sudo nginx -t show no error, systemctl status nginx operational Shed some light anyone? Appreciate it. Update 16/12/2020 Here's my nginx code where I put under sites-available and then linked to sites-enabled via ln -s server { listen [::]:80; ## Listens on port 80 IPv6 listen 80; ## Listens on port 80 IPv4 listen [::]:443 ssl http2; ## Listens on port 443 IPv6 with http2 and ssl enabled listen 443 ssl http2; ## Listens on port 443 IPv4 with http2 and ssl enabled proxy_buffering off; ## Sends data as fast as it can not buffering large chunks. server_name emby.mydomainname.com; ## enter your service name and domain name here access_log /var/log/nginx/embyaccess.log; ## Creates a log file with this name and the log info above. ## SSL SETTINGS ## ssl_session_timeout 30m; ssl_protocols TLSv1.2 TLSv1.1 TLSv1; ssl_certificate /etc/ssl/mydomainname/cert.pem; ## Location of your public ssl_certificate_key /etc/ssl/mydomainname/key.pem; ## Location of your private PEM file. ssl_client_certificate /etc/ssl/mydomainname/cloudflare.crt; ##Authenticated Origin Pulls ssl_verify_client on; ##Authenticated Origin Pulls ssl_session_cache shared:SSL:10m; location ^~ /swagger { ## Disables access to swagger interface return 404; } location / { proxy_pass http://localhost:8096; ## Enter the IP here proxy_hide_header X-Powered-By; ## Hides nginx server version from bad guys. proxy_set_header Range $http_range; ## Allows specific chunks of a file to be requested. proxy_set_header If-Range $http_if_range; ## Allows specific chunks of a file to be requested. #proxy_set_header X-Real-IP $remote_addr; ## Passes the real client IP to the backend server. proxy_set_header X-Real-IP $http_CF_Connecting_IP; ## if you use cloudflare un-comment this line and comment out above line. proxy_set_header Host $host; ## Passes the requested domain name to the backend server. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; ## Adds forwarded IP to the list of IPs that were forwarded to the backend server. ## ADDITIONAL SECURITY SETTINGS ## ## Optional settings to improve security ## ## add these after you have completed your testing and ssl setup ## ## NOTICE: For the Strict-Transport-Security setting below, I would recommend ramping up to this value ## ## See https://hstspreload.org/ read through the "Deployment Recommendations" section first! ## add_header 'Referrer-Policy' 'origin-when-cross-origin'; add_header Strict-Transport-Security "max-age=15552000; preload" always; add_header X-Frame-Options "SAMEORIGIN" always; add_header X-Content-Type-Options "nosniff" always; add_header X-XSS-Protection "1; mode=block" always; ## WEBSOCKET SETTINGS ## Used to pass two way real time info to and from emby and the client. proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $http_connection; } } Big thanks to @pir8radio for the configuration, my configuration is based on his. Setting up authenticated origin pulls is optional, here's where I download the cert. https://support.cloudflare.com/hc/en-us/articles/204899617-Authenticated-Origin-Pulls#section6
  6. Hi. In the past I used emby in Windows behind a Traefik Container. Now I had to change everything because I don't want to use Windows anymore. I decided to switch to UnRAID. Now I've created a Docker Compose File to create my new emby container. version: '3.7' networks: emby-net: driver: bridge traefik_traefik-net: external: true services: emby: container_name: Emby image: emby/embyserver:latest ports: - "8096:8096" - "8920:8920" - "1900:1900/udp" restart: unless-stopped devices: - /dev/dri:/dev/dri environment: - UID=18 - GID=18 - GIDLIST=18 volumes: - emby-config:/config - type: bind source: /mnt/user/Downloads target: /mnt/Downloads - type: bind source: /mnt/user/Aufzeichnungen target: /mnt/Aufzeichnungen - type: bind source: /mnt/user/Sicherungen/Musik target: /mnt/Musik - type: bind source: /mnt/user/Sicherungen/Bilder & Videos target: /mnt/Bilder & Videos - type: bind source: /mnt/user/Docker/Zertifikate target: /mnt/Zertifikate - type: bind source: /mnt/user/Backups/Docker/Emby target: /mnt/Backup networks: - emby-net - traefik_traefik-net labels: - "traefik.docker.network=traefik_traefik-net" - "traefik.enable=true" - "traefik.http.routers.emby.entrypoints=http" - "traefik.http.routers.emby.rule=Host(`emby.mydomain.de`)" - "traefik.http.routers.emby.middlewares=https-redirect" - "traefik.http.routers.emby-s.entrypoints=https" - "traefik.http.routers.emby-s.rule=Host(`emby.mydomain.de`)" - "traefik.http.routers.emby-s.tls=true" - "traefik.http.routers.emby-s.tls.certresolver=letsencrypt" - "traefik.http.routers.emby-s.tls.domains[0].main=mydomain.de" - "traefik.http.routers.emby-s.tls.domains[0].sans=cloud.mydomain.de,emby.mydomain.de,blog.mydomain.de" - "traefik.http.middlewares.https-redirect.redirectscheme.scheme=https" - "traefik.http.services.emby-s.loadbalancer.server.port=8920" volumes: emby-config: Now I got the Problem, that emby isn't reachable, if I use my domain name. Its just reachable, when I use the local IP. I use the emby standard ports for http (8096) and https (8920). These are the logs from emby: 2020-09-21 17:37:26.559 Error HttpServer: Error in ProcessAccept *** Error Report *** Version: 4.4.3.0 Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3 Operating system: Unix 5.7.8.0 64-Bit OS: True 64-Bit Process: True User Interactive: True Runtime: file:///system/System.Private.CoreLib.dll System.Environment.Version: 3.1.2 Processor count: 4 Program data path: /config Application directory: /system System.IO.IOException: System.IO.IOException: The handshake failed due to an unexpected packet format. at System.Net.Security.SslStream.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.ProcessAuthentication(LazyAsyncResult lazyResult, CancellationToken cancellationToken) at System.Net.Security.SslStream.BeginAuthenticateAsServer(SslServerAuthenticationOptions sslServerAuthenticationOptions, CancellationToken cancellationToken, AsyncCallback asyncCallback, Object asyncState) at System.Net.Security.SslStream.BeginAuthenticateAsServer(X509Certificate serverCertificate, Boolean clientCertificateRequired, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation, AsyncCallback asyncCallback, Object asyncState) at System.Net.Security.SslStream.<>c.<AuthenticateAsServerAsync>b__68_1(X509Certificate arg1, Boolean arg2, SslProtocols arg3, AsyncCallback callback, Object state) at System.Threading.Tasks.TaskFactory`1.FromAsyncImpl[TArg1,TArg2,TArg3](Func`6 beginMethod, Func`2 endFunction, Action`1 endAction, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state, TaskCreationOptions creationOptions) at System.Threading.Tasks.TaskFactory.FromAsync[TArg1,TArg2,TArg3](Func`6 beginMethod, Action`1 endMethod, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state, TaskCreationOptions creationOptions) at System.Threading.Tasks.TaskFactory.FromAsync[TArg1,TArg2,TArg3](Func`6 beginMethod, Action`1 endMethod, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state) at System.Net.Security.SslStream.AuthenticateAsServerAsync(X509Certificate serverCertificate, Boolean clientCertificateRequired, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation) at SocketHttpListener.Net.HttpConnection.Init() at SocketHttpListener.Net.HttpEndPointListener.ProcessAccept(SocketAsyncEventArgs args) Source: System.Net.Security TargetSite: Void StartReadFrame(Byte[], Int32, System.Net.AsyncProtocolRequest) 2020-09-21 17:37:26.624 Error HttpServer: Error in ProcessAccept *** Error Report *** Version: 4.4.3.0 Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3 Operating system: Unix 5.7.8.0 64-Bit OS: True 64-Bit Process: True User Interactive: True Runtime: file:///system/System.Private.CoreLib.dll System.Environment.Version: 3.1.2 Processor count: 4 Program data path: /config Application directory: /system System.IO.IOException: System.IO.IOException: The handshake failed due to an unexpected packet format. at System.Net.Security.SslStream.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.ProcessAuthentication(LazyAsyncResult lazyResult, CancellationToken cancellationToken) at System.Net.Security.SslStream.BeginAuthenticateAsServer(SslServerAuthenticationOptions sslServerAuthenticationOptions, CancellationToken cancellationToken, AsyncCallback asyncCallback, Object asyncState) at System.Net.Security.SslStream.BeginAuthenticateAsServer(X509Certificate serverCertificate, Boolean clientCertificateRequired, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation, AsyncCallback asyncCallback, Object asyncState) at System.Net.Security.SslStream.<>c.<AuthenticateAsServerAsync>b__68_1(X509Certificate arg1, Boolean arg2, SslProtocols arg3, AsyncCallback callback, Object state) at System.Threading.Tasks.TaskFactory`1.FromAsyncImpl[TArg1,TArg2,TArg3](Func`6 beginMethod, Func`2 endFunction, Action`1 endAction, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state, TaskCreationOptions creationOptions) at System.Threading.Tasks.TaskFactory.FromAsync[TArg1,TArg2,TArg3](Func`6 beginMethod, Action`1 endMethod, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state, TaskCreationOptions creationOptions) at System.Threading.Tasks.TaskFactory.FromAsync[TArg1,TArg2,TArg3](Func`6 beginMethod, Action`1 endMethod, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state) at System.Net.Security.SslStream.AuthenticateAsServerAsync(X509Certificate serverCertificate, Boolean clientCertificateRequired, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation) at SocketHttpListener.Net.HttpConnection.Init() at SocketHttpListener.Net.HttpEndPointListener.ProcessAccept(SocketAsyncEventArgs args) Source: System.Net.Security TargetSite: Void StartReadFrame(Byte[], Int32, System.Net.AsyncProtocolRequest) 2020-09-21 17:37:31.661 Error HttpServer: Error in ProcessAccept *** Error Report *** Version: 4.4.3.0 Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3 Operating system: Unix 5.7.8.0 64-Bit OS: True 64-Bit Process: True User Interactive: True Runtime: file:///system/System.Private.CoreLib.dll System.Environment.Version: 3.1.2 Processor count: 4 Program data path: /config Application directory: /system System.IO.IOException: System.IO.IOException: The handshake failed due to an unexpected packet format. at System.Net.Security.SslStream.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.ProcessAuthentication(LazyAsyncResult lazyResult, CancellationToken cancellationToken) at System.Net.Security.SslStream.BeginAuthenticateAsServer(SslServerAuthenticationOptions sslServerAuthenticationOptions, CancellationToken cancellationToken, AsyncCallback asyncCallback, Object asyncState) at System.Net.Security.SslStream.BeginAuthenticateAsServer(X509Certificate serverCertificate, Boolean clientCertificateRequired, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation, AsyncCallback asyncCallback, Object asyncState) at System.Net.Security.SslStream.<>c.<AuthenticateAsServerAsync>b__68_1(X509Certificate arg1, Boolean arg2, SslProtocols arg3, AsyncCallback callback, Object state) at System.Threading.Tasks.TaskFactory`1.FromAsyncImpl[TArg1,TArg2,TArg3](Func`6 beginMethod, Func`2 endFunction, Action`1 endAction, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state, TaskCreationOptions creationOptions) at System.Threading.Tasks.TaskFactory.FromAsync[TArg1,TArg2,TArg3](Func`6 beginMethod, Action`1 endMethod, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state, TaskCreationOptions creationOptions) at System.Threading.Tasks.TaskFactory.FromAsync[TArg1,TArg2,TArg3](Func`6 beginMethod, Action`1 endMethod, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state) at System.Net.Security.SslStream.AuthenticateAsServerAsync(X509Certificate serverCertificate, Boolean clientCertificateRequired, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation) at SocketHttpListener.Net.HttpConnection.Init() at SocketHttpListener.Net.HttpEndPointListener.ProcessAccept(SocketAsyncEventArgs args) Source: System.Net.Security TargetSite: Void StartReadFrame(Byte[], Int32, System.Net.AsyncProtocolRequest) 2020-09-21 17:37:31.706 Error HttpServer: Error in ProcessAccept *** Error Report *** Version: 4.4.3.0 Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3 Operating system: Unix 5.7.8.0 64-Bit OS: True 64-Bit Process: True User Interactive: True Runtime: file:///system/System.Private.CoreLib.dll System.Environment.Version: 3.1.2 Processor count: 4 Program data path: /config Application directory: /system System.IO.IOException: System.IO.IOException: The handshake failed due to an unexpected packet format. at System.Net.Security.SslStream.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslStream.ProcessAuthentication(LazyAsyncResult lazyResult, CancellationToken cancellationToken) at System.Net.Security.SslStream.BeginAuthenticateAsServer(SslServerAuthenticationOptions sslServerAuthenticationOptions, CancellationToken cancellationToken, AsyncCallback asyncCallback, Object asyncState) at System.Net.Security.SslStream.BeginAuthenticateAsServer(X509Certificate serverCertificate, Boolean clientCertificateRequired, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation, AsyncCallback asyncCallback, Object asyncState) at System.Net.Security.SslStream.<>c.<AuthenticateAsServerAsync>b__68_1(X509Certificate arg1, Boolean arg2, SslProtocols arg3, AsyncCallback callback, Object state) at System.Threading.Tasks.TaskFactory`1.FromAsyncImpl[TArg1,TArg2,TArg3](Func`6 beginMethod, Func`2 endFunction, Action`1 endAction, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state, TaskCreationOptions creationOptions) at System.Threading.Tasks.TaskFactory.FromAsync[TArg1,TArg2,TArg3](Func`6 beginMethod, Action`1 endMethod, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state, TaskCreationOptions creationOptions) at System.Threading.Tasks.TaskFactory.FromAsync[TArg1,TArg2,TArg3](Func`6 beginMethod, Action`1 endMethod, TArg1 arg1, TArg2 arg2, TArg3 arg3, Object state) at System.Net.Security.SslStream.AuthenticateAsServerAsync(X509Certificate serverCertificate, Boolean clientCertificateRequired, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation) at SocketHttpListener.Net.HttpConnection.Init() at SocketHttpListener.Net.HttpEndPointListener.ProcessAccept(SocketAsyncEventArgs args) Source: System.Net.Security TargetSite: Void StartReadFrame(Byte[], Int32, System.Net.AsyncProtocolRequest) and from Traefik: [21/Sep/2020:17:37:26 +0000] "GET / HTTP/2.0" 502 11 "-" "-" 10952 "emby-s@docker" "http://172.21.0.3:8920" 4ms [21/Sep/2020:17:37:26 +0000] "GET /favicon.ico HTTP/2.0" 499 21 "-" "-" 10953 "emby-s@docker" "http://172.21.0.3:8920" 1ms [21/Sep/2020:17:37:31 +0000] "GET / HTTP/2.0" 502 11 "-" "-" 10955 "emby-s@docker" "http://172.21.0.3:8920" 10ms [21/Sep/2020:17:37:31 +0000] "GET /favicon.ico HTTP/2.0" 502 11 "-" "-" 10956 "emby-s@docker" "http://172.21.0.3:8920" 3ms The IP 172.21.0.3 is used by emby in the traefik_traefik-net. Any Ideas what the problem could be? I use the same configuration for nextcloud and a wordpress blog without any problems. Thanks in advance!
  7. Mr.Berzerk

    Emby behind reverse haproxy on pfSense

    Hey everyone. I've been running emby for a while, and know I want to get remote access working, but Emby is one of 6 servers, so it is a must to be behind a reverse-proxy. I got http working, but I can't get Emby to work on https/ssl. I have a certificate setup, but, I get this error in my browser when going https. R_END_OF_FILE_ERROR From searching the web, it is common for proxies to give this error, but I can't figure out what I need to change in haproxy to correct it. Emby is using a letsenecrypt certificate, and is is running remote access through 443. Any help would be appreciated.
  8. johntankard

    Reverse Proxy - unknown ip

    Hi guys, Need a little help please. I've setup cloudflare reverse Proxy pointing to my emby server, in addition I've secured the incoming port to only allow ip ranges that belong to cloudflare. For a while all was fine but today I couldn't access the emby server, while examining the firewall logs I noticed the cloudflare ip was allowed through but also noticed a single ip address that tried access at the same time that belonged to Google namely (35.214.82.167) was being blocked - once I allowed this ip through, the emby android app connected fine. Does emby rely on some additional Google ownes ip addresses? It doesn't make sense. Thanks John.
  9. What I have done so far, I have a domain name purchased from namecheap i'll call it <mydomain> I used namecheap's DDNS on my emby server which creates an A record on the domain. for whatever reason, I had to use www.<mydomain>.com I don't know why but i had to add the www's to get it to work, I had also tried @<mydomain>.com but it would never update I have let this run for a week so everything should be updated and ready to go On my router I forwarded ports 80 and 443 to the emby server with my particular router I can't figure out a way to permit it through the firewall but my test has the firewall turned off so I dont think it is causing the issue. Emby's setting local http 8096 https 8920 public http 80 https 443 allow remote is checked caddy v2 I downloaded the zip, unzipped it on the root directory. Created the extension-less "caddyfile" its contents are, { email <mygmail>@gmail.com } www.<mydomain>.com { reverse_proxy http://192.168.0.18:80 } I know I can use localhost instead of the IP, this should work though because I know it's internal IP and I have it set to not change as I use it to connect using RDP. Running everything I use command prompt and navigate to the Caddy directory with router firewall on and the server's firewall off, I run # caddy run C:\Caddy>caddy run 2020/06/21 14:46:17.402 [34mINFO[0m using adjacent Caddyfile 2020/06/21 14:46:17.413 [34mINFO[0m admin admin endpoint started {"address": "localhost:2019", "enforce_origin": false, "origins": ["localhost:2019"]} 2020/06/21 08:46:17 [INFO][cache:0xc0005ff7c0] Started certificate maintenance routine 2020/06/21 14:46:17.415 [34mINFO[0m http server is listening only on the HTTPS port but has no TLS connection policies; adding one to enable TLS {"server_name": "srv0", "https_port": 443} 2020/06/21 14:46:17.415 [34mINFO[0m http enabling automatic HTTP->HTTPS redirects {"server_name": "srv0"} 2020/06/21 14:46:17.418 [34mINFO[0m tls cleaned up storage units 2020/06/21 14:46:17.418 [34mINFO[0m http enabling automatic TLS certificate management {"domains": ["www.<mydomain>.com"]} 2020/06/21 08:46:17 [INFO][www.<mydomain>.com] Obtain certificate; acquiring lock... 2020/06/21 14:46:17.425 [34mINFO[0m autosaved config {"file": "C:\\Users\\<myuser>\\AppData\\Roaming\\Caddy\\autosave.json"} 2020/06/21 14:46:17.428 [34mINFO[0m serving initial configuration 2020/06/21 08:46:17 [INFO][www.<mydomain>.com] Obtain: Lock acquired; proceeding... 2020/06/21 08:46:17 [INFO][www.<mydomain>.com] Waiting on rate limiter... 2020/06/21 08:46:17 [INFO][www.<mydomain>.com] Done waiting 2020/06/21 08:46:17 [INFO] [www.<mydomain>.com] acme: Obtaining bundled SAN certificate given a CSR 2020/06/21 08:46:18 [INFO] [www.<mydomain>.com] AuthURL: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387022605 2020/06/21 08:46:18 [INFO] [www.<mydomain>.com] acme: Could not find solver for: tls-alpn-01 2020/06/21 08:46:18 [INFO] [www.<mydomain>.com] acme: use http-01 solver 2020/06/21 08:46:18 [INFO] [www.<mydomain>.com] acme: Trying to solve HTTP-01 2020/06/21 08:46:25 [INFO] Deactivating auth: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387022605 2020/06/21 08:46:25 [INFO] Unable to deactivate the authorization: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387022605 2020/06/21 08:46:25 [ERROR] acme: Error -> One or more domains had a problem: [www.<mydomain>.com] acme: error: 400 :: urn:ietf:params:acme:error:connection :: Fetching http://www.<mydomain>.com/.well-known/acme-challenge/P-jvWvwSBjkK_9PQepBe5puAo_TLpsdonnZVunocu-I: Connection reset by peer, url: (challenge=http-01 remaining=[tls-alpn-01]) 2020/06/21 08:46:27 [INFO] [www.<mydomain>.com] acme: Obtaining bundled SAN certificate given a CSR 2020/06/21 08:46:27 [INFO] [www.<mydomain>.com] AuthURL: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387024673 2020/06/21 08:46:27 [INFO] [www.<mydomain>.com] acme: use tls-alpn-01 solver 2020/06/21 08:46:27 [INFO] [www.<mydomain>.com] acme: Trying to solve TLS-ALPN-01 2020/06/21 08:46:28 http: TLS handshake error from 127.0.0.1:61875: EOF 2020/06/21 08:46:28 [INFO] Deactivating auth: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387024673 2020/06/21 08:46:28 [INFO] Unable to deactivate the authorization: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387024673 2020/06/21 08:46:28 [ERROR] acme: Error -> One or more domains had a problem: [www.<mydomain>.com] acme: error: 400 :: urn:ietf:params:acme:error:connection :: Connection refused, url: (challenge=tls-alpn-01 remaining=[]) 2020/06/21 08:46:30 [ERROR] attempt 1: [www.<mydomain>.com] Obtain: [www.<mydomain>.com] acme: Error -> One or more domains had a problem: [www.<mydomain>.com] acme: error: 400 :: urn:ietf:params:acme:error:connection :: Connection refused, url: - retrying in 1m0s (13.0492981s/720h0m0s elapsed)... 2020/06/21 14:46:34.960 [34mINFO[0m shutting down {"signal": "SIGINT"} 2020/06/21 08:46:34 [INFO][cache:0xc0005ff7c0] Stopped certificate maintenance routine 2020/06/21 08:46:34 [INFO][www.<mydomain>.com] Obtain: Releasing lock 2020/06/21 14:46:34.963 [34mINFO[0m shutdown done {"signal": "SIGINT"} with both router and caddy server's firewalls off I run caddy and it does this, C:\Caddy>caddy run 2020/06/21 14:47:55.788 [34mINFO[0m using adjacent Caddyfile 2020/06/21 14:47:55.794 [34mINFO[0m admin admin endpoint started {"address": "localhost:2019", "enforce_origin": false, "origins": ["localhost:2019"]} 2020/06/21 14:47:55.795 [34mINFO[0m http server is listening only on the HTTPS port but has no TLS connection policies; adding one to enable TLS {"server_name": "srv0", "https_port": 443} 2020/06/21 14:47:55.795 [34mINFO[0m http enabling automatic HTTP->HTTPS redirects {"server_name": "srv0"} 2020/06/21 08:47:55 [INFO][cache:0xc0002e3b80] Started certificate maintenance routine 2020/06/21 14:47:55.796 [34mINFO[0m http enabling automatic TLS certificate management {"domains": ["www.<mydomain>.com"]} 2020/06/21 14:47:55.797 [34mINFO[0m tls cleaned up storage units 2020/06/21 14:47:55.798 [34mINFO[0m autosaved config {"file": "C:\\Users\\<myuser>\\AppData\\Roaming\\Caddy\\autosave.json"} 2020/06/21 14:47:55.799 [34mINFO[0m serving initial configuration 2020/06/21 08:47:55 [INFO][www.<mydomain>.com] Obtain certificate; acquiring lock... 2020/06/21 08:47:55 [INFO][www.<mydomain>.com] Obtain: Lock acquired; proceeding... 2020/06/21 08:47:55 [INFO][www.<mydomain>.com] Waiting on rate limiter... 2020/06/21 08:47:55 [INFO][www.<mydomain>.com] Done waiting 2020/06/21 08:47:55 [INFO] [www.<mydomain>.com] acme: Obtaining bundled SAN certificate given a CSR 2020/06/21 08:47:56 [INFO] [www.<mydomain>.com] AuthURL: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387042878 2020/06/21 08:47:56 [INFO] [www.<mydomain>.com] acme: Could not find solver for: tls-alpn-01 2020/06/21 08:47:56 [INFO] [www.<mydomain>.com] acme: use http-01 solver 2020/06/21 08:47:56 [INFO] [www.<mydomain>.com] acme: Trying to solve HTTP-01 2020/06/21 08:48:03 [INFO] Deactivating auth: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387042878 2020/06/21 08:48:03 [INFO] Unable to deactivate the authorization: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387042878 2020/06/21 08:48:03 [ERROR] acme: Error -> One or more domains had a problem: [www.<mydomain>.com] acme: error: 400 :: urn:ietf:params:acme:error:connection :: Fetching http://www.<mydomain>.com/.well-known/acme-challenge/fZqo0DmEmVjo9sElqDlmfJv6r_y50shAJ87QeOgb_rE: Connection reset by peer, url: (challenge=http-01 remaining=[tls-alpn-01]) 2020/06/21 08:48:05 [INFO] [www.<mydomain>.com] acme: Obtaining bundled SAN certificate given a CSR 2020/06/21 08:48:06 [INFO] [www.<mydomain>.com] AuthURL: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387045568 2020/06/21 08:48:06 [INFO] [www.<mydomain>.com] acme: use tls-alpn-01 solver 2020/06/21 08:48:06 [INFO] [www.<mydomain>.com] acme: Trying to solve TLS-ALPN-01 2020/06/21 08:48:06 http: TLS handshake error from 127.0.0.1:62306: EOF 2020/06/21 08:48:11 [INFO] Deactivating auth: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387045568 2020/06/21 08:48:11 [INFO] Unable to deactivate the authorization: https://acme-v02.api.letsencrypt.org/acme/authz-v3/5387045568 2020/06/21 08:48:11 [ERROR] acme: Error -> One or more domains had a problem: [www.<mydomain>.com] acme: error: 400 :: urn:ietf:params:acme:error:connection :: Connection refused, url: (challenge=tls-alpn-01 remaining=[]) 2020/06/21 08:48:13 [ERROR] attempt 1: [www.<mydomain>.com] Obtain: [www.<mydomain>.com] acme: Error -> One or more domains had a problem: [www.<mydomain>.com] acme: error: 400 :: urn:ietf:params:acme:error:connection :: Connection refused, url: - retrying in 1m0s (17.8656781s/720h0m0s elapsed)... 2020/06/21 14:48:24.865 [34mINFO[0m shutting down {"signal": "SIGINT"} 2020/06/21 08:48:24 [INFO][cache:0xc0002e3b80] Stopped certificate maintenance routine 2020/06/21 08:48:24 [INFO][www.<mydomain>.com] Obtain: Releasing lock 2020/06/21 14:48:24.867 [34mINFO[0m shutdown done {"signal": "SIGINT"} The emby server is running windows server 2019 like a lot of server's it doesn't have any additional antivirus or firewall beyond windows defender. This is what I am referring to when I say in the test that the firewall is turned off. Both Private and Public network settings are set to 'Turn off Windows Defender Firewall'. Any help with why this isn't working would be appreciated. If I left out anything that is important please let me know. I am unfamiliar with all of this so if I didn't mention it I almost certainly didn't do it.
  10. Hello Emby community! So today I decided to give Emby a try in order to maybe replace Plex that I have been using for years. So far, I loved almost everything about Emby (maybe not the fact that we can't change the green accent in the AndroidTV app, but that's a story for another day ). I have one question though, for which I couldnt seem to find precise info. I run all my services from a machine in my house, which runs OpenMediaVault (i.e. Debian). I use Docker for most of the services, with bridge mode for their network interface. I also have, among those services, an Nginx container that serves as a reverse-proxy, so I can access my services more easily. The OpenMediaVault web interface proposes the option to connect using a self-signed SSL certificate, which I decided to use when I set it all up. I then re-used this same SSL certificate for all my other reverse-proxies, by mounting the certificate files as read-only into the Nginx container, so that I only had one exception to add to my browsers in order to reach all my services like so: https://servicename.hostname.lan So far, so good, as I only access these services from my home lan, and since I used Plex until now, I never had to mess with secure remote access: since the connection is routed through their servers, it was an easy setup with no configuration on my side (only authorizing the default Plex port for outgoing connections in my machine's iptables as well as ESTABLISHED,RELATED incoming connections, then once it was connected I had nothing more to do for their servers to detect my machine, not even setting port redirection on my router or allowing anything through my router's firewall). But now, I'd like to switch to Emby, and here's my question: am I not able to allow secure remote access if I don't have a domain name pointing to my home router's IP? What else could I do? I can post the nginx configs (with purged personal info) if needed. Many thanks in advance!
  11. plaidstallion

    Recommended HTTP headers?

    I was hoping someone could take a look at the HTTP headers I have my reverse proxy (Traefik v2) apply to Emby (and other apps) and let me know what might be causing issues with the app? customFrameOptionsValue: SAMEORIGIN browserXssFilter: true stsSeconds: 155520011 referrerPolicy: no-referrer contentTypeNosniff: true sslRedirect: true forceSTSHeader: true stsIncludeSubdomains: true stsPreload: true featurePolicy: true sslForceHost: true contentSecurityPolicy: "default-src ‘self’; script-src ‘self’ ‘unsafe-eval’; style-src ‘self’ ‘unsafe-inline’; frame-src *; img-src * data: blob:; font-src ‘self’ data:; media-src *;" accessControlAllowOriginList: [“<origin>”] featurePolicy: "geolocation 'none'; camera 'none'; microphone 'none'" The web interface is accessible but sometimes it doesn't load all the assets (cover art, etc) and movies will randomly not play. If I take all the headers off, everything works fine as if I am connecting inside the LAN but then I lose that nice A+ security rating for headers scan. I suppose I can start taking them off one by one and see what might be the issue but thought the devs or forum mods may just be able to look at my list and spot what is wrong. I looked for documentation of recommended headers but didn't see any articles through Google searches. Seems like a good wiki item.
  12. Hey guys, first of all: Emby for Kodi is the reason why i came to emby. Great app, much appreciated. @@Angelblue05 @@sualfred I'm still testing a lot of stuff but i found some errors in my kodi.log. Every five seconds it gives me a never ending loop of these: NOTICE: EMBY.entrypoint.service -> [ onNotification/plugin.video.emby/WebSocketRestarting ] NOTICE: Emby.emby.core.ws_client -> ERROR:: Handshake Status 503 Debug logging within emby for kodi will add these two lines: NOTICE: EMBY.helper.utils -> DEBUG:: ---[ event: plugin.video.emby/WebSocketRestarting ] "[{}]" NOTICE: EMBY.entrypoint.service -> DEBUG:: [ plugin.video.emby: WebSocketRestarting ] {} The http error code 503 comes from my haproxy, which does SNI and SSL-offloading (e.g. by emby.domain.com) on port 443 and will return a 503, if you use none or a non existent hostname in your request. Making emby server and emby.domain.com my the default (fallback), the websocket will work with haproxy. For obvious reasons i don't want to use my emby server as 'default backend' on any request on port 443. Haproxy logs show, that the request is: "GET /embywebsocket?api_key=<removed>&device_id=<removed> HTTP/1.1" (See update at the end) Unfortunately i could not figure a way to make haproxy or emby for kodi show me the whole request with the hostname, so one can only guess, that is might not be the hostname but maybe only the ip address? While searching about this, i only found this locked topic, from which i didn't get any helping hints. I understand there was a fix in the websockets request in 2017 which added a slash before the 'embywebsocket': https://emby.media/community/index.php?/topic/50062-web-sockets-and-reverse-proxy/ Since i can see the get request with the leading slash, i figure this can't be the reason for the 503. Of cause i'd like to rule out a configuration error on the haproxy side. Since streaming and database updates seem to work as long with the workaround using emby server as default backend for SNI, in my opinion this has to be a websocket request specific problem. So my first question would be: Does anybody have this working with reverse proxy and SNI (without emby as default backend)? On the other hand i'm not sure what the websocket is used for. I figured it might be the 'send message' feature from server to client or the 'inform about new content' over 'server is restarting' and so on. Which features depend on a websocket to the emby server? Is it 'required'? I'd also like to look further into this, but i can't seem to find the full websocket request in any log. Is there a way to see the whole request somewhere in emby for kodi? I'm running: - emby for kodi 4.1.19 - Libreelec 9.2.2 with Kodi 18.6 - Emby server 4.4.2.0 Thanks for your help or hints in advance. Steve UPDATE: I figured how to make haproxy capture the sent host headers from the http request and log them. The problems seems to be that an additonal colon from the appending port remains inside the host header (e.g. emby.domain.com: ). This seems to be the reason why haproxy can't find the hostname. Is this a bug inside Kodi for Emby? I use 'manual server' with 'https://emby.domain.com:443'.This still only happens with the websockets request. Can someone tell, how this request does handle the host header differently from the other requests? SOLUTION: Emby for Kodi does SNI correctly. It turned out i had my haproxy configuration wrong. It was redirecting to emby server based on the host header within the http request, but it should have redirected by the SNI within the tcp request. I set it to sni and now it works perfect. Thanks for pointing me back to the haproxy logs and sorry for wasting your time @@Luke.
  13. I've been looking, but I cannot find any examples of how to self-host Emby behind an NGINX reverse proxy at anything other than the root path on port 80. I host a website under the www subdomain at the root path on port 80, so that's not an option. I'm fine with any of these solutions: Use a different port (http://www.mydomain.com:8096/) Use a different subdomain (http://emby.mydomain.com/) Use a different path (http://www.mydomain.com/emby/) My current configuration is an attempt at solution #3 because that's the one I was able to get furthest on. I think I'd prefer solution #1 or #2, but I'm not picky. I'd also like to setup SSL, but I need to get this working before I can worry about encryption. That said, the SSL configuration for my website might be responsible for my current problem. All requests to port 80 are redirected to 443, which has SSL enabled. The server just directs everything on the /emby path to localhost:8096, which Emby binds to. I'm able to load the index page, but it fails to load the Javascript used to render any actual content. It looks like the server isn't able to serve the Javascript file over HTTPS. I have very limited experience with NGINX and Emby and I have no idea how to fix it. Here's my NGINX server configuration: server { listen 443 ssl default_server; listen [::]:443 ssl default_server; root /█████/website; server_name █████; ssl on; ssl_certificate /█████/cert.pem; ssl_certificate_key /█████/privkey.pem; ssl_stapling on; ssl_stapling_verify on; resolver 8.8.4.4 8.8.8.8; location /static { alias /█████/website/static; } location / { try_files $uri @wsgi; } location @wsgi { proxy_pass http://unix:/tmp/gunicorn.sock; include proxy_params; } location ~* .(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|css|rss|atom|js|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ { access_log off; log_not_found off; expires max; } location /emby { proxy_pass http://127.0.0.1:8096; } } server { listen 80 default_server; listen [::]:80 default_server; server_name █████; return 301 https://$host$request_uri; }
  14. Hello All, I recently installed Emby, and to allow encrypted remote access, I put it behind my NGINX reverse proxy. This worked perfectly. I have a domain, and Emby is a webapp behind that domain. I have a login system on the domain that is monitored with fail2ban. When a user logs in, the system checks their permissions, and they can access webapps via my reverse proxy based on their respective permissions. This also works perfectly with Emby -- only the users who have authenticated on my domain with the proper permissions can access it. However, the problem is that I or other people cannot connect any Emby apps to my server because the Emby apps obviously try to connect to my Emby reverse proxy without authenticating on my domain, meaning those connections are not properly entitled and blocked with a 401 error. I typically let API endpoints on other webapps bypass the server auth for this purpose, but I could not figure out which specific endpoints to open up for Emby to connect to Emby apps while keeping the main Emby endpoint locked down. I can remove my server auth and use the new feature in 4.1.0.19 that require users to log into Emby if they access the page remotely. This allows apps through while still keeping the Emby page behind a login (the Emby login and not my domain's login), but it is less than ideal for one main reason: I lose all control I have by locking the web portal behind my server auth such as fail2ban monitoring incorrect logins. I hope I was clear about my use case, and maybe some of you can help me figure out the best way to proceed such as which endpoints I can open up while keeping the overall subfolder locked down, or maybe a way to configure it that balances ease of use and security.
  15. With the assistance of a helpful individual (kmbanana) on the Emby discord, I was able to get Emby for Roku working-- for those that have struggled previously, if you have Emby installed behind a reverse proxy to go to something like https://domain.com/emby (as opposed to https://emby.domain.com) this apparently completely breaks Emby for Roku when connecting via Emby Connect. It'll see the server and on the "connect to a server" screen on Emby for Roku it'll says the url is "https://domain.com:443/emby" which LOOKS correct, but if you try to connect, it just won't. You have to delete the server and then re-add it: https://domain.com/emby and then port 00000. Yes, the port 00000 is the most important part. In your server configuration, of course, set your public port to 80 and your public https port to 443, and have "secure connection mode" to "Handled by reverse proxy". Of course, you can save all this hassle by use a subdomain (i.e. emby.domain.com) as opposed to domain.com/emby, but that's not how I had my server/certs set up.... and while I will probably end up going that direction, I want to explain this option to those where setting up another subdomain may not be an option for whatever reason.
  16. How to secure Emby using LetsEncrypt and Nginx Reverse Proxy by modifying Docker containers in Openmediavault. https://youtu.be/jYoDyoH2C0A
  17. I'm trying to get playback to work on android web browser with basic auth enabled on my reverse proxy, but I just can't get it to play. One of my users reported that it was working one time sometime last week, but now it won't work anymore. I haven't made any changes in that time period so I'm not sure why it stopped working. Everything is working normally on desktop web browsers it's just android web browsers I have issues with. When I press play on something it just sits there with a black screen not playing. In my dashboard I can see the client is not playing, I then press play on the client and then see on my dashboard that it looks like it's starting playing, counting the seconds, before it stops showing: --:-- then starts over again from start counting the seconds and repeat. Meanwhile, nothing is happening on the client, just a black screen. If I disable basic auth though, everything starts working again.. Here is the embty log: 2018-12-20 18:20:11.935 Info App: Starting entry point Emby.Server.Implementations.EntryPoints.ExternalPortForwarding 2018-12-20 18:20:11.937 Debug PortMapper: Starting NAT discovery 2018-12-20 18:20:11.959 Info LibraryMonitor: Watching directory /mnt/Kids TV 2018-12-20 18:20:11.961 Info App: Entry point completed: Emby.Server.Implementations.EntryPoints.ExternalPortForwarding. Duration: 0.0257335 seconds 2018-12-20 18:20:11.961 Info App: Starting entry point Emby.Server.Implementations.EntryPoints.KeepServerAwake 2018-12-20 18:20:11.961 Info LibraryMonitor: Watching directory /mnt/Kids Movie 2018-12-20 18:20:11.961 Info App: Entry point completed: Emby.Server.Implementations.EntryPoints.KeepServerAwake. Duration: 0.0005 seconds 2018-12-20 18:20:11.961 Info App: Starting entry point Emby.Server.Implementations.EntryPoints.LibraryChangedNotifier 2018-12-20 18:20:11.965 Info App: Entry point completed: Emby.Server.Implementations.EntryPoints.LibraryChangedNotifier. Duration: 0.0032512 seconds 2018-12-20 18:20:11.965 Info App: Starting entry point Emby.Server.Implementations.EntryPoints.RecordingNotifier 2018-12-20 18:20:11.965 Info LibraryMonitor: Watching directory /mnt/Blue Ray 2018-12-20 18:20:11.967 Info App: Entry point completed: Emby.Server.Implementations.EntryPoints.RecordingNotifier. Duration: 0.0025231 seconds 2018-12-20 18:20:11.967 Info App: Starting entry point Emby.Server.Implementations.EntryPoints.ServerEventNotifier 2018-12-20 18:20:11.967 Info LibraryMonitor: Watching directory /mnt/UFC 2018-12-20 18:20:11.972 Info App: Entry point completed: Emby.Server.Implementations.EntryPoints.ServerEventNotifier. Duration: 0.0050891 seconds 2018-12-20 18:20:11.972 Info App: Starting entry point Emby.Server.Implementations.EntryPoints.StartupWizard 2018-12-20 18:20:11.973 Info App: Entry point completed: Emby.Server.Implementations.EntryPoints.StartupWizard. Duration: 0.0011249 seconds 2018-12-20 18:20:11.973 Info App: Starting entry point Emby.Server.Implementations.EntryPoints.SystemEvents 2018-12-20 18:20:11.974 Info App: Entry point completed: Emby.Server.Implementations.EntryPoints.SystemEvents. Duration: 0.0007011 seconds 2018-12-20 18:20:11.974 Info App: Starting entry point Emby.Server.Implementations.EntryPoints.UdpServerEntryPoint 2018-12-20 18:20:11.978 Info App: Entry point completed: Emby.Server.Implementations.EntryPoints.UdpServerEntryPoint. Duration: 0.0040602 seconds 2018-12-20 18:20:11.978 Info App: Starting entry point Emby.Server.Implementations.EntryPoints.UsageEntryPoint 2018-12-20 18:20:11.982 Info App: Entry point completed: Emby.Server.Implementations.EntryPoints.UsageEntryPoint. Duration: 0.0040928 seconds 2018-12-20 18:20:11.982 Info App: Starting entry point Emby.Server.Implementations.EntryPoints.UserDataChangeNotifier 2018-12-20 18:20:11.983 Info App: Entry point completed: Emby.Server.Implementations.EntryPoints.UserDataChangeNotifier. Duration: 0.0007485 seconds 2018-12-20 18:20:11.983 Info App: Starting entry point Emby.Server.Implementations.Devices.DeviceManagerEntryPoint 2018-12-20 18:20:11.986 Info App: Entry point completed: Emby.Server.Implementations.Devices.DeviceManagerEntryPoint. Duration: 0.0025047 seconds 2018-12-20 18:20:11.986 Info App: Starting entry point Emby.Server.Implementations.Collections.CollectionManagerEntryPoint 2018-12-20 18:20:11.989 Info App: Entry point completed: Emby.Server.Implementations.Collections.CollectionManagerEntryPoint. Duration: 0.002759 seconds 2018-12-20 18:20:11.989 Info App: Starting entry point Emby.Server.Implementations.Activity.ActivityLogEntryPoint 2018-12-20 18:20:11.996 Info App: Entry point completed: Emby.Server.Implementations.Activity.ActivityLogEntryPoint. Duration: 0.0072283 seconds 2018-12-20 18:20:11.996 Info App: Starting entry point Emby.Server.MediaEncoding.Api.ApiEntryPoint 2018-12-20 18:20:12.010 Info HttpClient: GET https://emby.media/community/index.php?/blog/rss/1-media-browser-developers-blog 2018-12-20 18:20:12.198 Info App: Entry point completed: Emby.Server.MediaEncoding.Api.ApiEntryPoint. Duration: 0.2018516 seconds 2018-12-20 18:20:12.198 Info App: Starting entry point Emby.Notifications.Notifications 2018-12-20 18:20:12.199 Info App: Entry point completed: Emby.Notifications.Notifications. Duration: 0.001427 seconds 2018-12-20 18:20:12.199 Info App: Starting entry point MediaBrowser.XbmcMetadata.EntryPoint 2018-12-20 18:20:12.200 Info App: Entry point completed: MediaBrowser.XbmcMetadata.EntryPoint. Duration: 0.0003132 seconds 2018-12-20 18:20:12.200 Info App: Starting entry point Emby.Security.PluginSecurityManager 2018-12-20 18:20:12.200 Info App: Entry point completed: Emby.Security.PluginSecurityManager. Duration: 6.53E-05 seconds 2018-12-20 18:20:12.200 Info App: Starting entry point Emby.Server.Sync.SyncManagerEntryPoint 2018-12-20 18:20:12.207 Info LibraryMonitor: Watching directory /mnt/Movies 2018-12-20 18:20:12.209 Info App: Sqlite version: 3.24.0 2018-12-20 18:20:12.209 Info App: Sqlite compiler options: COMPILER=gcc-6.3.0,ENABLE_COLUMN_METADATA,ENABLE_DBSTAT_VTAB,ENABLE_FTS3,ENABLE_FTS3_PARENTHESIS,ENABLE_FTS3_TOKENIZER,ENABLE_FTS5,ENABLE_JSON1,ENABLE_PREUPDATE_HOOK,ENABLE_RTREE,ENABLE_SESSION,ENABLE_UNLOCK_NOTIFY,ENABLE_UPDATE_DELETE_LIMIT,LIKE_DOESNT_MATCH_BLOBS,MAX_SCHEMA_RETRY=25,MAX_VARIABLE_NUMBER=250000,OMIT_LOOKASIDE,SECURE_DELETE,THREADSAFE=1 2018-12-20 18:20:12.235 Info App: Default journal_mode for /config/data/sync14.db is wal 2018-12-20 18:20:12.237 Info App: PRAGMA synchronous=1 2018-12-20 18:20:12.240 Info App: Entry point completed: Emby.Server.Sync.SyncManagerEntryPoint. Duration: 0.0400702 seconds 2018-12-20 18:20:12.240 Info App: Starting entry point Emby.Server.Sync.SyncNotificationEntryPoint 2018-12-20 18:20:12.243 Info App: Entry point completed: Emby.Server.Sync.SyncNotificationEntryPoint. Duration: 0.0029592 seconds 2018-12-20 18:20:12.243 Info App: All entry points have started 2018-12-20 18:20:12.524 Info LibraryMonitor: Watching directory /mnt/Tv Shows 2018-12-20 18:20:13.616 Info HttpServer: WS http://192.168.2.215:8096/embywebsocket?api_key=4f66ce8814b44c638fe34f211c9d9597&device_id=E53110E4852F424A88353975DE0F9AF5. UserAgent: 2018-12-20 18:20:13.625 Debug HttpServer: Web socket connection allowed 2018-12-20 18:20:13.761 Debug SessionManager: Creating new WebSocketController 2018-12-20 18:20:13.769 Info App: App Activity: app: Kodi, version: 3.1.35a, deviceId: 41AFE14D17E6493788112D76D5BE283B, deviceName: Kodi (LibreELEC) 2018-12-20 18:20:13.881 Info TaskManager: StartupTrigger fired for task: Check for plugin updates 2018-12-20 18:20:13.883 Info TaskManager: Queueing task PluginUpdateTask 2018-12-20 18:20:13.892 Info TaskManager: Executing Check for plugin updates 2018-12-20 18:20:13.904 Info TaskManager: StartupTrigger fired for task: Check for application updates 2018-12-20 18:20:13.904 Info TaskManager: Queueing task SystemUpdateTask 2018-12-20 18:20:13.904 Info TaskManager: Executing Check for application updates 2018-12-20 18:20:13.975 Debug App: No application update available. 2018-12-20 18:20:13.977 Info TaskManager: Check for application updates Completed after 0 minute(s) and 0 seconds 2018-12-20 18:20:14.015 Info TaskManager: ExecuteQueuedTasks 2018-12-20 18:20:14.046 Info TaskManager: Check for plugin updates Completed after 0 minute(s) and 0 seconds 2018-12-20 18:20:14.047 Info TaskManager: ExecuteQueuedTasks 2018-12-20 18:20:23.899 Info HttpServer: WS http://192.168.2.215:8096/embywebsocket?api_key=70b85a803cdb4fefa91cdee3c976e47e&deviceId=TW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NDsgcnY6NjAuMCkgR2Vja28vMjAxMDAxMDEgRmlyZWZveC82MC4wfDE1MjcyMzk0MjI3MTg1. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:23.899 Debug HttpServer: Web socket connection allowed 2018-12-20 18:20:23.909 Debug SessionManager: Creating new WebSocketController 2018-12-20 18:20:23.909 Info App: App Activity: app: Emby Mobile, version: 3.5.3.0, deviceId: TW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NDsgcnY6NjAuMCkgR2Vja28vMjAxMDAxMDEgRmlyZWZveC82MC4wfDE1MjcyMzk0MjI3MTg1, deviceName: Firefox 2018-12-20 18:20:26.057 Debug SessionManager: Disposing session controller WebSocketController 2018-12-20 18:20:26.185 Info HttpServer: HTTP GET http://192.168.2.215:8096/web/touchicon114.png. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.186 Debug HttpResultFactory: Transmit file /system/dashboard-ui/touchicon114.png 2018-12-20 18:20:26.186 Info HttpServer: HTTP GET http://192.168.2.215:8096/web/favicon.ico. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.186 Debug HttpResultFactory: Transmit file /system/dashboard-ui/favicon.ico 2018-12-20 18:20:26.187 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 3ms. http://192.168.2.215:8096/web/touchicon114.png 2018-12-20 18:20:26.187 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 0ms. http://192.168.2.215:8096/web/favicon.ico 2018-12-20 18:20:26.321 Info HttpServer: HTTP GET http://192.168.2.215:8096/web/strings/en-US.json?v=1545326456022. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.322 Debug HttpResultFactory: Transmit file /system/dashboard-ui/strings/en-US.json 2018-12-20 18:20:26.322 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 1ms. http://192.168.2.215:8096/web/strings/en-US.json?v=1545326456022 2018-12-20 18:20:26.323 Info HttpServer: HTTP GET http://192.168.2.215:8096/web/bower_components/emby-webcomponents/strings/en-us.json?v=1545326456022. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.323 Debug HttpResultFactory: Transmit file /system/dashboard-ui/bower_components/emby-webcomponents/strings/en-us.json 2018-12-20 18:20:26.323 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 0ms. http://192.168.2.215:8096/web/bower_components/emby-webcomponents/strings/en-us.json?v=1545326456022 2018-12-20 18:20:26.602 Debug XmlSerializer: Deserializing file /config/config/branding.xml 2018-12-20 18:20:26.732 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/system/info/public. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.742 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 11ms. http://192.168.2.215:8096/emby/system/info/public 2018-12-20 18:20:26.750 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/Info. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.807 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 57ms. http://192.168.2.215:8096/emby/System/Info 2018-12-20 18:20:26.814 Info HttpServer: HTTP POST http://192.168.2.215:8096/emby/Sessions/Capabilities/Full. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.817 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/Users/827a8085a4d74bd680d0c4e470ee0c1f. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.819 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/DisplayPreferences/usersettings?userId=827a8085a4d74bd680d0c4e470ee0c1f&client=emby. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.821 Info HttpServer: WS http://192.168.2.215:8096/embywebsocket?api_key=70b85a803cdb4fefa91cdee3c976e47e&deviceId=TW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NDsgcnY6NjAuMCkgR2Vja28vMjAxMDAxMDEgRmlyZWZveC82MC4wfDE1MjcyMzk0MjI3MTg1. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.821 Debug HttpServer: Web socket connection allowed 2018-12-20 18:20:26.821 Debug SessionManager: Creating new WebSocketController 2018-12-20 18:20:26.835 Debug XmlSerializer: Deserializing file /config/config/users/827a8085a4d74bd680d0c4e470ee0c1f/config.xml 2018-12-20 18:20:26.884 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 65ms. http://192.168.2.215:8096/emby/DisplayPreferences/usersettings?userId=827a8085a4d74bd680d0c4e470ee0c1f&client=emby 2018-12-20 18:20:26.900 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/Users/827a8085a4d74bd680d0c4e470ee0c1f. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.908 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/Users/827a8085a4d74bd680d0c4e470ee0c1f. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:26.929 Info HttpServer: HTTP Response 204 to 192.168.2.226. Time: 116ms. http://192.168.2.215:8096/emby/Sessions/Capabilities/Full 2018-12-20 18:20:26.945 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 37ms. http://192.168.2.215:8096/emby/Users/827a8085a4d74bd680d0c4e470ee0c1f 2018-12-20 18:20:26.945 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 45ms. http://192.168.2.215:8096/emby/Users/827a8085a4d74bd680d0c4e470ee0c1f 2018-12-20 18:20:26.945 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 127ms. http://192.168.2.215:8096/emby/Users/827a8085a4d74bd680d0c4e470ee0c1f 2018-12-20 18:20:27.145 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/Sessions?ActiveWithinSeconds=960. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.147 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/ScheduledTasks. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.149 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/Info. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.150 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 1ms. http://192.168.2.215:8096/emby/System/Info 2018-12-20 18:20:27.153 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/News/Product?StartIndex=0&Limit=4. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.156 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A20%3A56.851Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.156 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A20%3A56.852Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.166 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/LiveTv/Recordings?UserId=827a8085a4d74bd680d0c4e470ee0c1f&IsInProgress=true&Fields=CanDelete%2CPrimaryImageAspectRatio&EnableTotalRecordCount=false&EnableImageTypes=Primary%2CThumb%2CBackdrop. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.174 Debug App: SessionInfoWebSocketListener Begin transmitting over websocket to [::ffff:192.168.2.226]:60587 2018-12-20 18:20:27.175 Debug App: ActivityLogWebSocketListener Begin transmitting over websocket to [::ffff:192.168.2.226]:60587 2018-12-20 18:20:27.175 Debug App: ActivityLogWebSocketListener Begin transmitting over websocket to [::ffff:192.168.2.226]:60587 2018-12-20 18:20:27.175 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 22ms. http://192.168.2.215:8096/emby/News/Product?StartIndex=0&Limit=4 2018-12-20 18:20:27.175 Debug App: ScheduledTasksWebSocketListener Begin transmitting over websocket to [::ffff:192.168.2.226]:60587 2018-12-20 18:20:27.176 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/web/configurationpages?pageType=PluginConfiguration&EnableInMainMenu=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.207 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 61ms. http://192.168.2.215:8096/emby/ScheduledTasks 2018-12-20 18:20:27.211 Info HttpServer: HTTP GET http://192.168.2.215:8096/web/css/images/supporter/supporterbadge.png. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.211 Debug HttpResultFactory: Transmit file /system/dashboard-ui/css/images/supporter/supporterbadge.png 2018-12-20 18:20:27.212 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 1ms. http://192.168.2.215:8096/web/css/images/supporter/supporterbadge.png 2018-12-20 18:20:27.214 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 37ms. http://192.168.2.215:8096/emby/web/configurationpages?pageType=PluginConfiguration&EnableInMainMenu=true 2018-12-20 18:20:27.241 Debug XmlSerializer: Deserializing file /config/config/users/52bdc6864641456e9e1674874e1ba111/config.xml 2018-12-20 18:20:27.253 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/Packages/Updates?PackageType=System. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.254 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 101ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A20%3A56.851Z&hasUserId=true 2018-12-20 18:20:27.283 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 128ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A20%3A56.852Z&hasUserId=false 2018-12-20 18:20:27.286 Info HttpServer: HTTP GET http://192.168.2.215:8096/web/css/images/logoblack.png. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.286 Debug HttpResultFactory: Transmit file /system/dashboard-ui/css/images/logoblack.png 2018-12-20 18:20:27.286 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 1ms. http://192.168.2.215:8096/web/css/images/logoblack.png 2018-12-20 18:20:27.288 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 121ms. http://192.168.2.215:8096/emby/LiveTv/Recordings?UserId=827a8085a4d74bd680d0c4e470ee0c1f&IsInProgress=true&Fields=CanDelete%2CPrimaryImageAspectRatio&EnableTotalRecordCount=false&EnableImageTypes=Primary%2CThumb%2CBackdrop 2018-12-20 18:20:27.294 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 41ms. http://192.168.2.215:8096/emby/Packages/Updates?PackageType=System 2018-12-20 18:20:27.301 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 157ms. http://192.168.2.215:8096/emby/Sessions?ActiveWithinSeconds=960 2018-12-20 18:20:27.386 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/Packages/Updates?PackageType=UserInstalled. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:27.445 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 59ms. http://192.168.2.215:8096/emby/Packages/Updates?PackageType=UserInstalled 2018-12-20 18:20:32.818 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/Endpoint. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:32.822 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 4ms. http://192.168.2.215:8096/emby/System/Endpoint 2018-12-20 18:20:37.796 Info HttpServer: WS http://some.domain.com:8096/embywebsocket?api_key=89aa74310cb24504b2ad3fc09c10ea04&deviceId=3f18effb9838f41ff3902668a958095c494a0f82. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:37.796 Debug HttpServer: Web socket connection allowed 2018-12-20 18:20:37.813 Info App: App Activity: app: Emby Mobile, version: 3.5.3.0, deviceId: 3f18effb9838f41ff3902668a958095c494a0f82, deviceName: Chrome Android 2018-12-20 18:20:37.821 Debug SessionManager: Creating new WebSocketController 2018-12-20 18:20:37.838 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A07.539Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:37.839 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A07.540Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:37.841 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A07.542Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:37.843 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A07.542Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:37.875 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 37ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A07.539Z&hasUserId=true 2018-12-20 18:20:37.914 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 75ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A07.540Z&hasUserId=false 2018-12-20 18:20:37.954 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 113ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A07.542Z&hasUserId=true 2018-12-20 18:20:37.993 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 151ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A07.542Z&hasUserId=false 2018-12-20 18:20:43.830 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:43.830 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:43.830 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:43.831 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:44.273 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 443ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:20:44.274 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 443ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:20:44.274 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 444ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:20:44.274 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 443ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:20:44.279 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/Items/fe1d41812fc16ab2132addf988e2b579/Images/Logo?tag=f4354321eb20cbf215249091a6b18a48&maxHeight=24&maxWidth=130&quality=90. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:44.291 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/Items/fe1d41812fc16ab2132addf988e2b579/Images/Backdrop?width=275&tag=7073d28ba71ce09bdde7ce5396c0573c&quality=70. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:44.325 Debug HttpResultFactory: Transmit file /config/cache/images/resized-images/c/c84214fe-aa4f-5a8c-b27b-9df770f77188.png 2018-12-20 18:20:44.325 Debug HttpResultFactory: Transmit file /config/cache/images/resized-images/3/3b8fa175-3dcb-20ce-1534-edb66e360894.jpg 2018-12-20 18:20:44.325 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 35ms. http://192.168.2.215:8096/emby/Items/fe1d41812fc16ab2132addf988e2b579/Images/Backdrop?width=275&tag=7073d28ba71ce09bdde7ce5396c0573c&quality=70 2018-12-20 18:20:44.325 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 46ms. http://192.168.2.215:8096/emby/Items/fe1d41812fc16ab2132addf988e2b579/Images/Logo?tag=f4354321eb20cbf215249091a6b18a48&maxHeight=24&maxWidth=130&quality=90 2018-12-20 18:20:49.348 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Stopped. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:49.349 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Video. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:49.349 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Audio. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:49.355 Debug App: ReportPlaybackStopped PlaySessionId: bef344cb29d549989818754226fbe516 2018-12-20 18:20:49.367 Info SessionManager: Playback stopped reported by app Emby Mobile 3.5.3.0 playing Chapter 1. Stopped at 0 ms 2018-12-20 18:20:49.369 Debug XmlSerializer: Deserializing file /config/config/xbmcmetadata.xml 2018-12-20 18:20:49.382 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 34ms. http://some.domain.com:8096/emby/Sessions/Playing/Stopped 2018-12-20 18:20:49.386 Debug XmlSerializer: Deserializing file /config/config/notifications.xml 2018-12-20 18:20:49.393 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A19.097Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:49.395 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A19.098Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:49.396 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Shows/NextUp?Limit=24&Fields=PrimaryImageAspectRatio%2CSeriesInfo%2CDateCreated%2CBasicSyncInfo&UserId=52bdc6864641456e9e1674874e1ba111&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CBanner%2CThumb&EnableTotalRecordCount=false. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:49.396 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A19.098Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:49.398 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A19.099Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:20:49.449 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 56ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A19.097Z&hasUserId=true 2018-12-20 18:20:49.485 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 90ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A19.098Z&hasUserId=false 2018-12-20 18:20:49.520 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 124ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A19.098Z&hasUserId=true 2018-12-20 18:20:49.560 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 162ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A19.099Z&hasUserId=false 2018-12-20 18:20:50.277 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 928ms. http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Audio 2018-12-20 18:20:50.359 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 1010ms (slow). http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Video 2018-12-20 18:20:50.545 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 1149ms (slow). http://some.domain.com:8096/emby/Shows/NextUp?Limit=24&Fields=PrimaryImageAspectRatio%2CSeriesInfo%2CDateCreated%2CBasicSyncInfo&UserId=52bdc6864641456e9e1674874e1ba111&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CBanner%2CThumb&EnableTotalRecordCount=false 2018-12-20 18:20:58.122 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Items/3fcb9a4393616310f4b449452a093ed7/Images/Primary?maxHeight=512&maxWidth=341&tag=bc094c6427f9902183d4bc025608f918&quality=40. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:58.122 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Items/68e7423fb048479f9d77ada93eb8ba05/Images/Primary?maxHeight=512&maxWidth=341&tag=6934c1981bf901b0ac0cb8f2118e49d9&quality=40. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:20:58.124 Debug HttpResultFactory: Transmit file /config/cache/images/resized-images/b/b701f5aa-639a-75e3-cc3a-a9b32f93b708.webp 2018-12-20 18:20:58.124 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 2ms. http://some.domain.com:8096/emby/Items/3fcb9a4393616310f4b449452a093ed7/Images/Primary?maxHeight=512&maxWidth=341&tag=bc094c6427f9902183d4bc025608f918&quality=40 2018-12-20 18:20:58.124 Debug HttpResultFactory: Transmit file /config/cache/images/resized-images/2/28d2095e-7122-24ce-3334-b17582bb3a7a.webp 2018-12-20 18:20:58.124 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 2ms. http://some.domain.com:8096/emby/Items/68e7423fb048479f9d77ada93eb8ba05/Images/Primary?maxHeight=512&maxWidth=341&tag=6934c1981bf901b0ac0cb8f2118e49d9&quality=40 2018-12-20 18:21:00.541 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Video. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:00.541 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Audio. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:00.542 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Shows/NextUp?Limit=24&Fields=PrimaryImageAspectRatio%2CSeriesInfo%2CDateCreated%2CBasicSyncInfo&UserId=52bdc6864641456e9e1674874e1ba111&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CBanner%2CThumb&EnableTotalRecordCount=false. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:00.544 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 3ms. http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Audio 2018-12-20 18:21:00.749 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 208ms. http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Video 2018-12-20 18:21:00.932 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 390ms. http://some.domain.com:8096/emby/Shows/NextUp?Limit=24&Fields=PrimaryImageAspectRatio%2CSeriesInfo%2CDateCreated%2CBasicSyncInfo&UserId=52bdc6864641456e9e1674874e1ba111&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CBanner%2CThumb&EnableTotalRecordCount=false 2018-12-20 18:21:12.344 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/c65f87fe7055016b9247d50892c72963. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:12.442 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 97ms. http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/c65f87fe7055016b9247d50892c72963 2018-12-20 18:21:12.598 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Shows/fe1d41812fc16ab2132addf988e2b579/Episodes?IsVirtualUnaired=false&IsMissing=false&UserId=52bdc6864641456e9e1674874e1ba111&Fields=Chapters. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:12.652 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 54ms. http://some.domain.com:8096/emby/Shows/fe1d41812fc16ab2132addf988e2b579/Episodes?IsVirtualUnaired=false&IsMissing=false&UserId=52bdc6864641456e9e1674874e1ba111&Fields=Chapters 2018-12-20 18:21:12.754 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/c65f87fe7055016b9247d50892c72963/Intros. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:12.766 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 12ms. http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/c65f87fe7055016b9247d50892c72963/Intros 2018-12-20 18:21:12.852 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Items/c65f87fe7055016b9247d50892c72963/PlaybackInfo?UserId=52bdc6864641456e9e1674874e1ba111&StartTimeTicks=0&IsPlayback=true&AutoOpenLiveStream=true&MaxStreamingBitrate=77064220. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:12.873 Debug App: GetPostedPlaybackInfo request: {"Id":"c65f87fe7055016b9247d50892c72963","UserId":"52bdc6864641456e9e1674874e1ba111","MaxStreamingBitrate":77064220,"StartTimeTicks":0,"DeviceProfile":{"EnableAlbumArtInDidl":false,"EnableSingleAlbumArtLimit":false,"EnableSingleSubtitleLimit":false,"SupportedMediaTypes":"Audio,Photo,Video","MaxAlbumArtWidth":0,"MaxAlbumArtHeight":0,"MaxStreamingBitrate":120000000,"MaxStaticBitrate":100000000,"MusicStreamingTranscodingBitrate":192000,"TimelineOffsetSeconds":0,"RequiresPlainVideoItems":false,"RequiresPlainFolders":false,"EnableMSMediaReceiverRegistrar":false,"IgnoreTranscodeByteRangeRequests":false,"XmlRootAttributes":[],"DirectPlayProfiles":[{"Container":"mp4,m4v","AudioCodec":"mp3,aac,opus,flac,vorbis","VideoCodec":"h264,vp8,vp9","Type":"Video"},{"Container":"mkv","AudioCodec":"mp3,aac,opus,flac,vorbis","VideoCodec":"h264,vp8,vp9","Type":"Video"},{"Container":"mov","AudioCodec":"mp3,aac,opus,flac,vorbis","VideoCodec":"h264","Type":"Video"},{"Container":"opus","Type":"Audio"},{"Container":"mp3","AudioCodec":"mp3","Type":"Audio"},{"Container":"aac","Type":"Audio"},{"Container":"m4a","AudioCodec":"aac","Type":"Audio"},{"Container":"flac","Type":"Audio"},{"Container":"webma,webm","Type":"Audio"},{"Container":"wav","Type":"Audio"},{"Container":"webm","AudioCodec":"vorbis,opus","VideoCodec":"VP8","Type":"Video"},{"Container":"webm","AudioCodec":"vorbis,opus","VideoCodec":"VP9","Type":"Video"}],"TranscodingProfiles":[{"Container":"ts","Type":"Audio","AudioCodec":"aac","Protocol":"hls","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Streaming","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":1,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"aac","Type":"Audio","AudioCodec":"aac","Protocol":"http","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Streaming","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"mp3","Type":"Audio","AudioCodec":"mp3","Protocol":"http","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Streaming","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"opus","Type":"Audio","AudioCodec":"opus","Protocol":"http","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Streaming","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"wav","Type":"Audio","AudioCodec":"wav","Protocol":"http","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Streaming","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"opus","Type":"Audio","AudioCodec":"opus","Protocol":"http","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Static","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"mp3","Type":"Audio","AudioCodec":"mp3","Protocol":"http","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Static","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"aac","Type":"Audio","AudioCodec":"aac","Protocol":"http","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Static","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"wav","Type":"Audio","AudioCodec":"wav","Protocol":"http","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Static","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"mkv","Type":"Video","VideoCodec":"h264,vp8,vp9","AudioCodec":"mp3,aac,opus,flac,vorbis","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":true,"Context":"Static","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"ts","Type":"Video","VideoCodec":"h264","AudioCodec":"mp3,aac,opus","Protocol":"hls","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Streaming","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":1,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"webm","Type":"Video","VideoCodec":"vpx","AudioCodec":"vorbis","Protocol":"http","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Streaming","EnableSubtitlesInManifest":false,"MaxAudioChannels":"2","MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false},{"Container":"mp4","Type":"Video","VideoCodec":"h264","AudioCodec":"mp3,aac,opus,flac,vorbis","Protocol":"http","EstimateContentLength":false,"EnableMpegtsM2TsMode":false,"TranscodeSeekInfo":"Auto","CopyTimestamps":false,"Context":"Static","EnableSubtitlesInManifest":false,"MinSegments":0,"SegmentLength":0,"BreakOnNonKeyFrames":false}],"ContainerProfiles":[],"CodecProfiles":[{"Type":"VideoAudio","Conditions":[{"Condition":"Equals","Property":"IsSecondaryAudio","Value":"false","IsRequired":false}],"ApplyConditions":[],"Codec":"aac"},{"Type":"VideoAudio","Conditions":[{"Condition":"Equals","Property":"IsSecondaryAudio","Value":"false","IsRequired":false}],"ApplyConditions":[]},{"Type":"Video","Conditions":[{"Condition":"NotEquals","Property":"IsAnamorphic","Value":"true","IsRequired":false},{"Condition":"EqualsAny","Property":"VideoProfile","Value":"high|main|baseline|constrained baseline|high 10","IsRequired":true},{"Condition":"LessThanEqual","Property":"VideoLevel","Value":"51","IsRequired":true}],"ApplyConditions":[],"Codec":"h264"}],"ResponseProfiles":[{"Container":"m4v","Type":"Video","MimeType":"video/mp4","Conditions":[]}],"SubtitleProfiles":[{"Format":"vtt","Method":"External"},{"Format":"ass","Method":"External"},{"Format":"ssa","Method":"External"}]},"EnableDirectPlay":true,"EnableDirectStream":true,"EnableTranscoding":true,"AllowVideoStreamCopy":true,"AllowAudioStreamCopy":true,"IsPlayback":true,"AutoOpenLiveStream":true,"DirectPlayProtocols":["Http"]} 2018-12-20 18:21:12.893 Info App: User policy for strike841. EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True 2018-12-20 18:21:12.915 Info App: Profile: Unknown Profile, Path: \\TOWER\Share\Tv Shows\House Of Cards 2013\House Of Cards 2013 Season 1\House.Of.Cards.2013.S01E01.720p.BluRay.x264-.mkv, isEligibleForDirectPlay: True, isEligibleForDirectStream: True 2018-12-20 18:21:12.929 Info App: Profile: Unknown Profile, No direct play profiles found for Path: \\TOWER\Share\Tv Shows\House Of Cards 2013\House Of Cards 2013 Season 1\House.Of.Cards.2013.S01E01.720p.BluRay.x264-.mkv 2018-12-20 18:21:12.979 Info App: RemoteClientBitrateLimit: 30000000, RemoteIp: 123.123.123.12, IsInLocalNetwork: False 2018-12-20 18:21:12.979 Info App: Profile: Unknown Profile, Path: \\TOWER\Share\Tv Shows\House Of Cards 2013\House Of Cards 2013 Season 1\House.Of.Cards.2013.S01E01.720p.BluRay.x264-.mkv, isEligibleForDirectPlay: True, isEligibleForDirectStream: True 2018-12-20 18:21:12.979 Info App: Profile: Unknown Profile, No direct play profiles found for Path: \\TOWER\Share\Tv Shows\House Of Cards 2013\House Of Cards 2013 Season 1\House.Of.Cards.2013.S01E01.720p.BluRay.x264-.mkv 2018-12-20 18:21:12.980 Info App: RemoteClientBitrateLimit: 30000000, RemoteIp: 123.123.123.12, IsInLocalNetwork: False 2018-12-20 18:21:12.980 Info App: Profile: Unknown Profile, Path: \\TOWER\Share\Tv Shows\House Of Cards 2013\House Of Cards 2013 Season 1\House.Of.Cards.2013.S01E01.720p.BluRay.x264-.mkv, isEligibleForDirectPlay: True, isEligibleForDirectStream: True 2018-12-20 18:21:12.980 Info App: Profile: Unknown Profile, No direct play profiles found for Path: \\TOWER\Share\Tv Shows\House Of Cards 2013\House Of Cards 2013 Season 1\House.Of.Cards.2013.S01E01.720p.BluRay.x264-.mkv 2018-12-20 18:21:13.009 Info App: RemoteClientBitrateLimit: 30000000, RemoteIp: 123.123.123.12, IsInLocalNetwork: False 2018-12-20 18:21:13.018 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 166ms. http://some.domain.com:8096/emby/Items/c65f87fe7055016b9247d50892c72963/PlaybackInfo?UserId=52bdc6864641456e9e1674874e1ba111&StartTimeTicks=0&IsPlayback=true&AutoOpenLiveStream=true&MaxStreamingBitrate=77064220 2018-12-20 18:21:13.141 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/videos/c65f87fe7055016b9247d50892c72963/master.m3u8?DeviceId=3f18effb9838f41ff3902668a958095c494a0f82&MediaSourceId=c65f87fe7055016b9247d50892c72963&VideoCodec=h264&AudioCodec=mp3,aac,opus&AudioStreamIndex=1&VideoBitrate=29360000&AudioBitrate=640000&PlaySessionId=a64e84b639074b9fa5895f8cecbfc5f9&TranscodingMaxAudioChannels=2&RequireAvc=false&Tag=d27bcaefad0c2d58128ee3fb90798672&SegmentContainer=ts&MinSegments=1&BreakOnNonKeyFrames=False&h264-profile=high,main,baseline,constrainedbaseline,high10&h264-level=51. Host=some.domain.com:443, X-Real-IP=123.123.123.12, X-Forwarded-For=123.123.123.12, X-Forwarded-Proto=https, Connection=upgrade, authorization=Basic c3RyaWtlOmJsYXN0MDc0NTUwMzU=, accept-encoding=identity;q=1, *;q=0, user-agent=Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36, chrome-proxy=frfr, accept=*/*, referer=https://some.domain.com/web/index.html, accept-language=en-US,en;q=0.9,nb;q=0.8, range=bytes=0- 2018-12-20 18:21:13.246 Debug App: Master playlist: #EXTM3U #EXT-X-VERSION:3 #EXT-X-INDEPENDENT-SEGMENTS #EXT-X-STREAM-INF:BANDWIDTH=7165026,AVERAGE-BANDWIDTH=5970855,VIDEO-RANGE=SDR,CODECS="avc1.640029,mp4a.40.34",RESOLUTION=1280x640,FRAME-RATE=23.976 main.m3u8?DeviceId=3f18effb9838f41ff3902668a958095c494a0f82&MediaSourceId=c65f87fe7055016b9247d50892c72963&VideoCodec=h264&AudioCodec=mp3,aac,opus&AudioStreamIndex=1&VideoBitrate=29360000&AudioBitrate=640000&PlaySessionId=a64e84b639074b9fa5895f8cecbfc5f9&api_key=89aa74310cb24504b2ad3fc09c10ea04&TranscodingMaxAudioChannels=2&RequireAvc=false&Tag=d27bcaefad0c2d58128ee3fb90798672&SegmentContainer=ts&MinSegments=1&BreakOnNonKeyFrames=False&h264-profile=high,main,baseline,constrainedbaseline,high10&h264-level=51 2018-12-20 18:21:13.246 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 106ms. http://some.domain.com:8096/emby/videos/c65f87fe7055016b9247d50892c72963/master.m3u8?DeviceId=3f18effb9838f41ff3902668a958095c494a0f82&MediaSourceId=c65f87fe7055016b9247d50892c72963&VideoCodec=h264&AudioCodec=mp3,aac,opus&AudioStreamIndex=1&VideoBitrate=29360000&AudioBitrate=640000&PlaySessionId=a64e84b639074b9fa5895f8cecbfc5f9&TranscodingMaxAudioChannels=2&RequireAvc=false&Tag=d27bcaefad0c2d58128ee3fb90798672&SegmentContainer=ts&MinSegments=1&BreakOnNonKeyFrames=False&h264-profile=high,main,baseline,constrainedbaseline,high10&h264-level=51 2018-12-20 18:21:13.549 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:13.557 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 8ms. http://some.domain.com:8096/emby/Sessions/Playing 2018-12-20 18:21:13.567 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A43.272Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:21:13.568 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A43.272Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:21:13.603 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 37ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A43.272Z&hasUserId=true 2018-12-20 18:21:13.612 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A43.311Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:21:13.614 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A43.311Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:21:13.639 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 71ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A43.272Z&hasUserId=false 2018-12-20 18:21:13.674 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 62ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A21%3A43.311Z&hasUserId=true 2018-12-20 18:21:13.713 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 99ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A21%3A43.311Z&hasUserId=false 2018-12-20 18:21:13.832 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:13.835 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 3ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:21:14.251 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:14.254 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 3ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:21:23.565 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:23.569 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 4ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:21:29.937 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:29.940 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 3ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:21:33.578 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:33.581 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 2ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:21:53.564 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:21:53.567 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 2ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:21:56.292 Info HttpServer: HTTP POST http://192.168.2.215:8096/emby/Sessions/Playing/Progress. UserAgent: Emby-Kodi/3.1.35a 2018-12-20 18:21:56.295 Info App: App Activity: app: Kodi, version: 3.1.35a, deviceId: E53110E4852F424A88353975DE0F9AF5, deviceName: Kodi (LibreELEC) 2018-12-20 18:21:56.297 Info HttpServer: HTTP Response 204 to 192.168.2.218. Time: 5ms. http://192.168.2.215:8096/emby/Sessions/Playing/Progress 2018-12-20 18:21:56.302 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A22%3A26.009Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:21:56.304 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A22%3A26.009Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:21:56.305 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A22%3A26.009Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:21:56.307 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A22%3A26.010Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:21:56.339 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 37ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A22%3A26.009Z&hasUserId=true 2018-12-20 18:21:56.375 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 71ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A22%3A26.009Z&hasUserId=false 2018-12-20 18:21:56.411 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 105ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A22%3A26.009Z&hasUserId=true 2018-12-20 18:21:56.446 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 139ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A22%3A26.010Z&hasUserId=false 2018-12-20 18:22:13.562 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:22:13.565 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 3ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:22:15.896 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:22:15.898 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 3ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:22:23.565 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Progress. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:22:23.570 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 5ms. http://some.domain.com:8096/emby/Sessions/Playing/Progress 2018-12-20 18:22:28.293 Info HttpServer: HTTP POST http://some.domain.com:8096/emby/Sessions/Playing/Stopped. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:22:28.294 Debug App: ReportPlaybackStopped PlaySessionId: a64e84b639074b9fa5895f8cecbfc5f9 2018-12-20 18:22:28.295 Info SessionManager: Playback stopped reported by app Emby Mobile 3.5.3.0 playing Chapter 1. Stopped at 0 ms 2018-12-20 18:22:28.295 Info HttpServer: HTTP Response 204 to 123.123.123.12. Time: 3ms. http://some.domain.com:8096/emby/Sessions/Playing/Stopped 2018-12-20 18:22:28.304 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A22%3A58.011Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:22:28.305 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A22%3A58.011Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:22:28.344 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 40ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A22%3A58.011Z&hasUserId=true 2018-12-20 18:22:28.344 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A22%3A58.050Z&hasUserId=true. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:22:28.345 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A22%3A58.051Z&hasUserId=false. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:22:28.380 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 74ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A22%3A58.011Z&hasUserId=false 2018-12-20 18:22:28.416 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 72ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=7&minDate=2018-12-19T17%3A22%3A58.050Z&hasUserId=true 2018-12-20 18:22:28.452 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 107ms. http://192.168.2.215:8096/emby/System/ActivityLog/Entries?startIndex=0&limit=4&minDate=2018-12-13T17%3A22%3A58.051Z&hasUserId=false 2018-12-20 18:22:28.473 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Video. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:22:28.476 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Audio. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:22:28.477 Info HttpServer: HTTP GET http://some.domain.com:8096/emby/Shows/NextUp?Limit=24&Fields=PrimaryImageAspectRatio%2CSeriesInfo%2CDateCreated%2CBasicSyncInfo&UserId=52bdc6864641456e9e1674874e1ba111&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CBanner%2CThumb&EnableTotalRecordCount=false. UserAgent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36 2018-12-20 18:22:28.532 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 59ms. http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Video 2018-12-20 18:22:28.533 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 57ms. http://some.domain.com:8096/emby/Users/52bdc6864641456e9e1674874e1ba111/Items/Resume?Limit=12&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CThumb&EnableTotalRecordCount=false&MediaTypes=Audio 2018-12-20 18:22:28.841 Info HttpServer: HTTP Response 200 to 123.123.123.12. Time: 364ms. http://some.domain.com:8096/emby/Shows/NextUp?Limit=24&Fields=PrimaryImageAspectRatio%2CSeriesInfo%2CDateCreated%2CBasicSyncInfo&UserId=52bdc6864641456e9e1674874e1ba111&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CBanner%2CThumb&EnableTotalRecordCount=false 2018-12-20 18:22:50.104 Debug App: ScheduledTasksWebSocketListener stop transmitting over websocket to [::ffff:192.168.2.226]:60587 2018-12-20 18:22:50.104 Debug App: SessionInfoWebSocketListener stop transmitting over websocket to [::ffff:192.168.2.226]:60587 2018-12-20 18:22:50.105 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/Logs. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:22:50.107 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/Configuration. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 2018-12-20 18:22:50.122 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 17ms. http://192.168.2.215:8096/emby/System/Logs 2018-12-20 18:22:50.128 Info HttpServer: HTTP Response 200 to 192.168.2.226. Time: 21ms. http://192.168.2.215:8096/emby/System/Configuration 2018-12-20 18:22:52.491 Info HttpServer: HTTP GET http://192.168.2.215:8096/emby/System/Logs/Log?name=embyserver.txt. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 And here is my proxy config # redirect all traffic to https server { listen 80; server_name _; return 301 https://$host$request_uri; } # main server block server { listen 443 ssl http2 default_server; # This header will prevent search engines from indexing your https pages add_header X-Robots-Tag "noindex, nofollow, nosnippet, noarchive"; root /config/www; index index.html index.htm index.php; server_name _; #ssl_certificate /config/keys/letsencrypt/fullchain.pem; #ssl_certificate_key /config/keys/letsencrypt/privkey.pem; #ssl_dhparam /config/nginx/dhparams.pem; #ssl_ciphers 'ECDHE-RSA-AES128 -GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA'; #ssl_prefer_server_ciphers on; #SSL settings include /config/nginx/strong-ssl.conf; client_max_body_size 0; location / { auth_basic "Restricted"; auth_basic_user_file /config/nginx/.htpasswd; include /config/nginx/proxy.conf; proxy_pass http://192.168.2.215:8096; } # LOCAL IP ALLOW GEO BLOCK if ($lan-ip = yes) { set $allowed_country yes; } # COUNTRY GEO BLOCK if ($allowed_country = no) { return 444; } } Proxy.conf: client_max_body_size 10m; client_body_buffer_size 128k; #Timeout if the real server is dead proxy_next_upstream error timeout invalid_header http_500 http_502 http_503; # Advanced Proxy Config send_timeout 5m; proxy_read_timeout 240; proxy_send_timeout 240; proxy_connect_timeout 240; # Basic Proxy Config proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_redirect http:// $scheme://; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_cache_bypass $cookie_session; proxy_no_cache $cookie_session; proxy_buffers 32 4k; Any help would be greatly appreciated!
  18. I'm a newbie - recently started using emby on an unraid server, accessible through reverse proxy using personal subdomain. All working well, but I'm having trouble setting up on Samsung smart TV. Works OK to sign on to server via web browser on the TV, but not ideal. However unable to sign on using the Samsung emby app. Fails to connect, despite the same url as working on the web browser. Any help would be welcome.
  19. Preface All of the media I'm testing have previously worked flawlessly in the current environment. Meaning my network topography/speed has not changed. I cannot say for sure when this problem began as I rarely need to use a browser to access my Emby personally, however I had a user report issues a few weeks ago. I gave it very little thought until I had reason to use a browser recently and I ran into problems. Problem Recently (within the last few weeks), Emby playback within my web-browser has begun giving me the following error: Testing I have tested with various browser on various machines with results as such Ubuntu - Chrome: FAIL Windows - Chrome: FAIL Ubuntu - Firefox: FAIL Windows - Firefox: FAIL Windows - Edge: SUCCESS I have deduced that this happens for all Matroska contained media as far as I can tell. Container WebM w/ VP9/Opus codecs works correctly. I'd have to really go fishing for other types of media to test as my libraries are 99.99% Matroska or WebM. Logs NOTE: Firefox actually attempted transcoding, though still resulted in the same error. I zipped the result transcode logs for each occurrence, though I know they will not be helpful for debugging this. 20180926-Emby.Server.DEBUG-Ubuntu.Chrome.v69.0.3497.81-1.log 20180926-Emby.Server.DEBUG.Windows.Chrome.v68.0.3440.100-1.log 20180926-Emby.Server.DEBUG-Ubuntu.Firefox.v57.0.1-1.log 20180926-Emby.Server.DEBUG-Ubuntu.Firefox.v57.0.1.zip 20180926-Emby.Server.DEBUG.Windows.Firefox.v62.0.2-1.log 20180926-Emby.Server.DEBUG.Windows.Firefox.v62.0.2.zip 20180926-Emby.Server.DEBUG.Windows.Edge.log UPDATE -- 20180927 -- Official Embyserver Docker Container results -- 20180927-Emby.Server.DEBUG-Ubuntu.Chrome.v69.0.3497.81-3-1.log UPDATE It appears I may have opened a duplicate post from someone else with a similar problem (though to be fair, when I searched I did not find it as their topic is very misleading) https://emby.media/community/index.php?/topic/63309-docker/?p=627055 Also at a glance at their log, their ffmpeg doesn't even start, whereas this is not my issue.
  20. garrettjones331

    Reverse Proxy - ERR_TOO_MANY_REDIRECTS

    Hello, I used Swynol's guide on setting up a reverse proxy in attempt to set up my own (Reference Post #5 - https://emby.media/community/index.php?/topic/47508-how-to-nginx-reverse-proxy/). In terms of NGINX config set up, I essentially copy and pasted his last post replacing his domains and sub-domains with my own. For the Emby server set up I have the public https port to 443, the external domain set, and the secure connection mode set to "Reverse Proxy". I have manually checked the server config xml and verified that "requirehttps" is false. I also have my 80 and 443 ports forwarded to the NGINX server on my router. The issue I'm getting is that when I try to access my server I get a "ERR_TOO_MANY_REDIRECTS" in chrome. I've exhausted my google-fu techniques and come to seek knowledge from others who may be more savvy with NGINX and reverse proxies.
  21. I just bought an emby lifetime subscription today and I can't get any of the android apps to work. I can log in fine to Web Gui, Emby Theater, Kodi work (although EmbyCon is extremely slow and part of the reason I want to use the apps). I bought this subscription mostly to use the apps so I'm currently feeling like I wasted money. I can log into each of the apps (Fire TV and Android Phone). I have used my reverse proxy using apache, direct https and direct http ports and I can sign in using all of them but when I try to select something to play it just sits there. Although sometimes it seems I can get a SSL Handshake Error and other times it seems like it's not even recognized. Any ideas on what could be wrong? I have attached a couple server log.
  22. Hello, I have been trying to set-up Emby and allow remote access with docker containers. No matter what I do I cannot connect from any app including the web app. If I put in the URL it will connect just fine as long as force SSL is not enabled, if force SSL is enabled then I get an error that there has been too many redirects. I have looked at the posts about setting up remote access and setting up reverse proxy and nothing is working, I am not sure where to begin any help would be greatly appreciated Thank you!
  23. ACoolUsername

    Not playing video through Nginx reverse proxy

    Hey, I have emby installed using the docker and behind an nginx reverse proxy, I used the config from this post https://emby.media/community/index.php?/topic/47508-how-to-nginx-reverse-proxy. Shown below. worker_processes 4; events { worker_connections 8192; } http { include mime.types; default_type application/octet-stream; server_tokens off; sendfile off; gzip on; gzip_disable "msie6"; gzip_comp_level 6; gzip_min_length 1100; gzip_buffers 16 8k; gzip_proxied any; gzip_types text/plain text/css text/js text/xml text/javascript application/javascript application/x-javascript application/json application/xml application/rss+xml image/svg+xml; tcp_nodelay on; server_names_hash_bucket_size 128; map_hash_bucket_size 64; ## Start: Timeouts ## client_body_timeout 10; client_header_timeout 10; keepalive_timeout 30; send_timeout 10; keepalive_requests 10; ## End: Timeouts ## ## Default Listening ## server { listen 80 default_server; listen [::]:80 default_server; server_name _; return 301 https://$host$request_uri; } ##EMBY Server## server { listen [::]:443 ssl; listen 443 ssl; #listen 80; #listen [::]:80; server_name emby.mydomain.com; access_log /var/log/nginx/emby.mydomain.com-access.log; error_log /var/log/nginx/emby.mydomain.com-error.log; ssl_protocols TLSv1.2 TLSv1.1; ssl_certificate /etc/letsencrypt/live/emby.mydomain.com/cert.pem; ssl_certificate_key /etc/letsencrypt/live/emby.mydomain.com/privkey.pem; ssl_session_cache shared:SSL:10m; #add_header Public-Key-Pins ' #pin-sha256="8TzXdhbnv+l6EjDG2Vj9EmgGiSmZenrTZSNUFEwyUE="; #pin-sha256="YLh1dUR9y6Kja30RrAn7JKnbQG/utLMkBgFF2Fuihg="; #pin-sha256="Vjs8r4z+80wjNcr1KepWQboSIRi63WsWXhIMN+eWys="; #max-age=86400; includeSubDomains'; add_header X-Xss-Protection "1; mode=block" always; add_header X-Content-Type-Options "nosniff" always; add_header Strict-Transport-Security "max-age=2592000; includeSubdomains" always; add_header X-Frame-Options "SAMEORIGIN" always; proxy_hide_header X-Powered-By; add_header 'Referrer-Policy' 'no-referrer'; add_header Content-Security-Policy "frame-ancestors mydomain.com emby.mydomain.com;"; location / { proxy_pass http://localhost:8096; 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 Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #Next three lines allow websockets proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } } } I am able to access emby through the reverse proxy and can browse media and manage server but whenever I try to play videos it just shows a black screen and the loading icon and eventually an error message will appear . I have tested this with Chrome, Firefox, Edge and Opera and they all give the same result (Firefox and Edge show the poster and loading icon). Everything works fine when connecting directly to emby (emby.mydomain.com:8904). Any help would be much appreciated.
  24. There have been a few posts around the Forum recently regarding SSL, HTTPS and Security. I'm by no means an expert on reverse proxies but have had alot of dealings with them over the past few months and with the help of @@pir8radio and @@shorty1483 have a fairly well setup and secure system to access my services from outside of my LAN. This guide is to help people access their Emby Server and any other services behind a reverse proxy. This is based on NGINX but it also works for Apache and IIS. So firstly, what is and why do i need a reverse proxy? If you’re like me and have many services running on servers or PCs in your home, i.e. Emby, Plex, Sonarr, Radarr, Ombi, Organizer, CP, home automation, CCTV and anything else. Then you have to open multiple ports on your router to direct traffic to where it needs to go. With a Reverse Proxy you only have to open 1 or 2 ports. Normally all HTTP traffic is sent over port 80 and HTTPS traffic over port 443. In my case I want all traffic served over HTTPS and port 443 so I close all ports bar 443. Another reason to use a reverse proxy is that you can use your own domain certs easily and fine tune your security settings. If you want to test your Domain security go here - https://securityheaders.io/ Chances are your rating will be an F. with reverse proxy you can easily attain a B+/A Grade. You can also setup a web faced server running NGINX and then have additional servers behind that hidden on your LAN, however if your like me I have NGINX running on the same machine as emby. I only access Emby remotely do i still need a reverse proxy? Difficult to answer. No you dont need a reverse proxy to access Emby, but if you do then you can fine tune the security. This guide assumes you have a Domain name, your own Certs to go with your domain name and either have your domain name pointed to a static PC (your home WAN IP) or have Dynamic DNS setup. Have I convinced you yet? I run Windows OS at home so this guide follows a Windows setup but the config will be the same across all OS. 1. Download the latest version of NGINX from here - http://nginx-win.ecsds.eu/ as of writing this guide its version 1.13.0.1 Violet. 2. Extract the ZIP file somewhere easy to find. C:\NGINX. a. To make future updating easier when you extract the ZIP the file is called nginx 1.13.0.1 Violet. Rename it to just NGINX. 3. Before we get started on the config of NGINX lets install it as a service. a. Download NSSM b. Extract the ZIP c. Copy correct x86 or x64 nssm.exe to C:\Windows\System32 d. Open a CMD, type ‘nssm install nginx’ e. Fill in the Application Path – C:\NGINX\nginx.exe Startup directory – C:\NGINX Service name – NGINX. Install Service Don’t Start the service yet, we need to configure NGINX. To create a config I use notepad++. I will go through each setting first before supplying a copy of my current config. This is how the config starts. worker_processes 2; events { worker_connections 8192; } http { include mime.types; default_type application/octet-stream; server_tokens off; sendfile off; gzip on; gzip_disable "msie6"; gzip_comp_level 6; gzip_min_length 1100; gzip_buffers 16 8k; gzip_proxied any; gzip_types text/plain text/css text/js text/xml text/javascript application/javascript application/x-javascript application/json application/xml application/rss+xml image/svg+xml; tcp_nodelay on; server_names_hash_bucket_size 128; map_hash_bucket_size 64; ## Start: Timeouts ## client_body_timeout 10; client_header_timeout 10; keepalive_timeout 30; send_timeout 10; keepalive_requests 10; ## End: Timeouts ## } This part is fairly standard. anything starting with # is disabled or just a comment. The config is broken down into blocks. the first block here is the HTTP block. The HTTP block contains all the headers required to do the work of the reverse proxy for example when someone browses to emby.mydomain.com it matches a header in NGINX and it knows where to forward the data. The only change in the section above over a default config is the addition of server_tokens off; this is the first of our security tweaks. This removes the version of NGINX from being visible outside your network and less chances of attackers being able to exploit version weaknesses. ## Default Listening ## server { listen 80 default_server; listen [::]:80 default_server; server_name _; return 301 https://$host$request_uri; } This next block is called a server block and it nested inside the HTTP block. This block is optional, it is only used to redirect any users from HTTP to HTTPS if you want to force users on HTTPS only. listen 80 and listen [::] 80 are default ports for HTTP traffic for IPv4 and IPv6. return 301 https://$host$request_uri; is what rewrites the request from HTTP to HTTPS. Again only needed if you are forcing everyone to use HTTPS only. ##EMBY Server## server { listen 80; listen [::] 80; listen [::]:443 ssl; listen 443 ssl; server_name emby.mydomain.com; ssl_session_timeout 30m; ssl_protocols TLSv1.2 TLSv1.1 TLSv1; ssl_certificate SSL/cert.pem; ssl_certificate_key SSL/private.key; ssl_session_cache shared:SSL:10m; #add_header Public-Key-Pins ' #pin-sha256="8TzXdhbnv+l6EjDG2Vj9EmgGiSmZenrTZSNaUFEwyUE="; #pin-sha256="YLh1dUR9y6Kja30RrAn7JKnbQG/uEtLMkBgFF2Fuihg="; #pin-sha256="Vjs8r4z+80wjNcr1YKepWQboSIRi63WsWXhIMN+eWys="; #max-age=86400; includeSubDomains'; add_header X-Xss-Protection "1; mode=block" always; add_header X-Content-Type-Options "nosniff" always; add_header Strict-Transport-Security "max-age=2592000; includeSubdomains" always; add_header X-Frame-Options "SAMEORIGIN" always; proxy_hide_header X-Powered-By; add_header 'Referrer-Policy' 'no-referrer'; add_header Content-Security-Policy "frame-ancestors mydomain.com emby.mydomain.com;"; location / { proxy_pass http://192.168.10.10:8096; 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 Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #Next three lines allow websockets proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } } The next server block is where the magic happens. First the listen 80; and listen [::] 80; are only needed if you want to allow users to access your emby server on port 80. otherwise delete these 2 lines to force all users to HTTPS access. Listen 443 ssl; and listen [::] 443 ssl; are the default HTTPS ports again for IPv4 and IPv6. server_name emby.mydomain.com will be your subdomain and how you access emby from outside your network. Now lets look at the SSL certificates, for my setup I created a .pem file. this file contains both my cert, intermediate and CA root cert in one file. This link gives you an idea how to do it - https://www.digicert.com/ssl-support/pem-ssl-creation.htm you should now have your cert.pem and a private.key file. for simplicity copy these files to C:\NGINX\conf\SSL (you have to create the SSL folder) This tells NGINX where to find the certs. ssl_certificate SSL/cert.pem; ssl_certificate_key SSL/private.key; For now I am going to skip over the #add_header Public-Key-Pins - as you can see i have it disabled by using # in front of it. I will explain why later on. The next section adds further security tweaks, you will need to change the content-security-policy domain names to your own. you need to list all your subdomains i.e. sonarr.mydomain.com radarr.mydomain.com emby.my....... you get the idea. add_header X-Xss-Protection "1; mode=block" always; add_header X-Content-Type-Options "nosniff" always; add_header Strict-Transport-Security "max-age=2592000; includeSubdomains" always; add_header X-Frame-Options "SAMEORIGIN" always; proxy_hide_header X-Powered-By; add_header 'Referrer-Policy' 'no-referrer'; add_header Content-Security-Policy "frame-ancestors mydomain.com emby.mydomain.com;"; The next part is called the location block. This is what tells your domain name emby.mydomain.com where the data should go. In this case it forwards everything to proxy_pass http://192.168.10.10:8096 you can also forward to proxy_pass http://127.0.0.1:8096 if it runs on the same box as NGINX. the rest of the location block is default stuff to help the data get to where it is needed. Your Config should now look like the one below. we need to save it to C:\NGINX\conf and name it nginx.conf worker_processes 2; events { worker_connections 8192; } http { include mime.types; default_type application/octet-stream; server_tokens off; sendfile off; server_names_hash_bucket_size 128; map_hash_bucket_size 64; ## Start: Timeouts ## client_body_timeout 10; client_header_timeout 10; keepalive_timeout 30; send_timeout 10; keepalive_requests 10; ## End: Timeouts ## ## Default Listening ## server { listen 80 default_server; listen [::]:80 default_server; server_name _; return 301 https://$host$request_uri; } ##EMBY Server## server { listen [::]:443 ssl; listen 443 ssl; server_name emby.mydomain.com; ssl_session_timeout 30m; ssl_protocols TLSv1.2 TLSv1.1 TLSv1; ssl_certificate SSL/cert.pem; ssl_certificate_key SSL/private.key; ssl_session_cache shared:SSL:10m; #add_header Public-Key-Pins ' #pin-sha256="8TzXdhbnv+l6EjDG2Vj9EmgGiSmZenrTZSNUFEwyUE="; #pin-sha256="YLh1dUR9y6Kja30RrAn7JKnbQG/utLMkBgFF2Fuihg="; #pin-sha256="Vjs8r4z+80wjNcr1KepWQboSIRi63WsWXhIMN+eWys="; #max-age=86400; includeSubDomains'; add_header X-Xss-Protection "1; mode=block" always; add_header X-Content-Type-Options "nosniff" always; add_header Strict-Transport-Security "max-age=2592000; includeSubdomains" always; add_header X-Frame-Options "SAMEORIGIN" always; proxy_hide_header X-Powered-By; add_header 'Referrer-Policy' 'no-referrer'; add_header Content-Security-Policy "frame-ancestors mydomain.com emby.mydomain.com;"; location / { proxy_pass http://192.168.10.10:8096; 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 Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #Next three lines allow websockets proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } } } And thats it, you can now start your NGINX services by running services.msc and starting NGINX.
  25. Okay this error may be due to a misconfiguration on my part. Here is my setup Emby is running on port 8004 mydomain.de - links to my nginx server mydomain.de/emby is configured in nginx to proxy_pass to localhost:8004 This works fine for the web version as well as the app until I want to activate a sync. I get in the log files: System.IO.FileNotFoundException: Unable to find the specified file. for http://mydomain.de:8004/emby/mediabrowser/users/xxx?format=json which makes the error correct as the way to go would not be http://mydomain.de:8004/emby/ but instead http://mydomain.de/emby/(Port 80) or even "https://mydomain.de/emby/" (Port 443) I have the feeling I am missing a config here. Any help is appreciated. ~Cheers
×
×
  • Create New...