Players don't download media when CMS is run behind a proxy

CMS Version

V2.0.5

Installation Method

Docker

Operating System

Debian 10

Issue

The players (tested on android and windows) don’t download the medias when the CMS is running behind a proxy (tested with apache and nginx)

Hi,

I’m running the CMS behind an nginx proxy, with SSL.

Here is the configuration :

server {
        listen 5859;
        listen [::]:5859;

        server_name example.xibo.ch;

        ssl_certificate         /etc/apache2/certs/wioo-soft-web/bundle.crt;
        ssl_certificate_key     /etc/apache2/certs/wioo-soft-web/wioo-soft-web.key;

        ssl on;
        ssl_session_cache  builtin:1000  shared:SSL:10m;
        ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
        ssl_prefer_server_ciphers on;

        access_log            /var/log/nginx/jenkins.access.log;

        location / {
                client_max_body_size 4G;
                proxy_set_header        Host $host;
                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 $scheme;

                proxy_pass          http://192.xxx.xxx.xxx:8071;
                proxy_read_timeout  999;


        }


        location @rewrites {
                rewrite ^ /index.php last;
                rewrite ^./authorize/.$ /api/authorize/index.php break;
                rewrite ^./api/.$ /api/index.php break;
                rewrite ^./install/.$ /install/index.php break;
                rewrite ^./maint/.$ /maint/index.php break;
        }
}

(I replaced the real URL by example.xibo.ch)

In the firewall, the port 15859 is redirected to 192.xxx.xxx.xxx:5859, which points to the server block above.
The port 19505 is redirected to 192.xxx.xxx.xxx:9505, for the XMR to work.

Finally, the CMS is running on port 8071

Here is the config of the CMS :

version: “2.1”

services:
cms-db:
image: mysql:5.6
volumes:
- “./shared/db:/var/lib/mysql”
environment:
- MYSQL_DATABASE=cms
- MYSQL_USER=cms
- MYSQL_RANDOM_ROOT_PASSWORD=yes
mem_limit: 1g
env_file: config.env
cms-xmr:
image: xibosignage/xibo-xmr:release-0.7
ports:
- “9505:9505”
mem_limit: 256m
env_file: config.env
cms-web:
image: xibosignage/xibo-cms:release-2.0.5
volumes:
- “./shared/cms/custom:/var/www/cms/custom”
- “./shared/backup:/var/www/backup”
- “./shared/cms/web/theme/custom:/var/www/cms/web/theme/custom”
- “./shared/cms/library:/var/www/cms/library”
- “./shared/cms/web/userscripts:/var/www/cms/web/userscripts”
links:
- cms-db:mysql
- cms-xmr:50001
environment:
- XMR_HOST=cms-xmr
env_file: config.env
ports:
- “8071:80”
mem_limit: 1g

https://example.xibo.ch:15859/ works fine, I acces the CMS as I normally would by typing http://192.xxx.xxx.xxx:8071/

In the CMS settings, I configured the XMR adress to be “tcp://example.xibo.ch:19505/”

I connect my player by typing the CMS address https ://example.xibo.ch:15859/ (I put a space because I can’t write more than two links as a new user)
Whenever I schedule something, it appears on the status screen of the player (the IDs of the layouts)
But the medias are not being downloaded.

I have checked all the existing topics on this issues, and none of the solutions worked on my configuration.

Do you have any idea of how to fix that ?

Thanks.

The Xibo Community site uses cookies. What are cookies?