Discourse non utilizza compressione brotli o gzip?

Ciao. Ho installato Discourse su un server CentOS. Utilizzo anche il pannello di controllo Centos.

Sembra che i file non vengano compressi in Discourse, sebbene dovrebbe utilizzare Brotli per impostazione predefinita e ripiegare su gzip.

Esempio per questo file, che è di 2,2 MB:
https://forum.canapin.win/assets/application-301651b1c7400a000974a9cecafd44ad3304cf647cf17bcfa7af68e9ed1ac4b7.js

Intestazioni di risposta:
    accept-ranges: bytes
    cache-control: max-age=31536000
    cache-control: public,immutable
    content-length: 2334732
    content-type: application/javascript
    date: Sat, 12 Oct 2019 23:36:50 GMT
    expires: Sun, 11 Oct 2020 23:36:50 GMT
    last-modified: Sat, 12 Oct 2019 23:33:24 GMT
    server: nginx/1.16.1
    status: 200
Intestazioni di richiesta:
    :authority: forum.canapin.win
    :method: GET
    :path: /assets/application-301651b1c7400a000974a9cecafd44ad3304cf647cf17bcfa7af68e9ed1ac4b7.js
    :scheme: https
    accept: */*
    accept-encoding: gzip, deflate, br
    accept-language: en-US,en;q=0.9
    cache-control: no-cache
    cookie: _t=89fc0a58f2a08712f3156f2687553cf8; __profilin=p%3Dt%2Ca%3Da546654bdc3538a213cd6c6fcc4c2a92; _forum_session=YnhETkNaTjF1YTEzVXUvZW1pS1NuTVVzdm1WWndlRktMdmNlU3hBalR3dUYwRGVUTzhBSlM5WkNiS0hDdVQvRmtGeGtLOTRRNndRWk9YUFczbTJHdjMyajlNNkpXZ2xzeEZwMkVmd2grcHlILzJVVmZWeFVVNlBERVF4S3VDMkJ0N2pUWktJWitmbXc2MDFFV1VEcG56M09jalRjMEJOb2t6M1NSbjJQUit1eDFRZkdCMGplVjhLK1JUNFVNdnRmVmZuK1B1NVdwK0N5Q1VrNTdDa01tdXh1T3h2aDY4OGx0SDMzRC9Ma0YzdElFS0p6b0x3algvVnRhVlljVDQyOS0tYnpSeFl5MjNoMVFVMm42UE0ybFJ6Zz09--b49c4c072e917618f874818e246298bce81235e5
    dnt: 1
    pragma: no-cache
    referer: https://forum.canapin.win/
    sec-fetch-mode: no-cors
    sec-fetch-site: same-origin
    user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36

Qualche idea sul perché?

La tua installazione segue quella standard, secondo la nostra guida ufficiale con Docker?

Ho seguito questa guida:
discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub
Ho solo modificato le porte in app.yml prima di avviare l’applicazione, dato che la porta 80 era già in uso.

Non ho utilizzato discourse setup, poiché avevo già Docker installato.

Per essere molto precisi su come ho installato Discourse, ecco i passaggi che ho seguito:

git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
cp samples/standalone.yml containers/app.yml

Ho modificato le porte qui:

## quali porte TCP/IP deve esporre questo container?
## Se desideri che Discourse condivida una porta con un altro server web come Apache o nginx,
## consulta https://meta.discourse.org/t/17247 per i dettagli
expose:
  - "8080:80" # inoltra la porta host 80 alla porta del container 8080 (http)
  - "4443:443" # inoltra la porta host 443 alla porta del container 4443 (https)
./launcher bootstrap app
./launcher start app

E ho reindirizzato la porta nella mia configurazione nginx nel pannello di controllo CentOS:

Questo è tutto.

Beh, ecco il problema: sta facendo il proxy di alcune cose e non le sta inoltrando correttamente.

Consiglierei di attenersi alla nostra installazione standard, che collega direttamente Internet al nostro contenitore e gestisce tutto questo per te.

Grazie. Non so molto sui server e cose del genere, e non so come riuscirci. In precedenza ho usato Plesk con le sue impostazioni predefinite e funzionava perfettamente, anche con il proxy nginx.

Comunque proverò a capire come fare, suppongo.

Grazie a @Arkshine, il mio problema è stato risolto.

Ho dovuto commentare queste righe in /etc/nginx/proxy.inc:

proxy_hide_header Vary;
proxy_set_header Accept-Encoding '';

Ora il server invia i file correttamente compressi da Discourse: