Welcome to the navigation

Consectetur labore ullamco cupidatat sint id eiusmod fugiat aliquip veniam, officia do sunt irure culpa ipsum consequat, aliqua, minim deserunt ut ex qui eu adipisicing. Sint ex consectetur laborum, aliqua, et ullamco laboris deserunt in ipsum eiusmod occaecat magna voluptate aute culpa officia ad minim nulla anim cupidatat sit enim

Yeah, this will be replaced... But please enjoy the search!

Proxmox: "Ext is not defined" when running the GUI behind NGINX

Ever tried to run proxmox behind NGINX Reverse Proxy to get nice urls with HTTPS? Ever since some version of 7.x was released several errors may appear resulting in the gui unable to load using reverse proxy.

 

GET https://xyz/pve2/ext6/ext-all.js?ver=7.0.0 net::ERR_CONTENT_LENGTH_MISMATCH 200 (OK)
GET https://xyz/pve2/js/pvemanagerlib.js?ver=7.3-4 net::ERR_CONTENT_LENGTH_MISMATCH 200 (OK)
charts.js?ver=7.0.0:1 Uncaught ReferenceError: Ext is not defined at charts.js?ver=7.0.0:1:1
proxmoxlib.js?ver=3.5.3:2 Uncaught ReferenceError: Ext is not defined at proxmoxlib.js?ver=3.5.3:2:1 
locale-en.js?ver=7.0.0:1 Uncaught ReferenceError: Ext is not defined at locale-en.js?ver=7.0.0:1:1
Uncaught ReferenceError: Ext is not defined at (index):38:5

Chances are that you have a badly configured or missing proxy_buffering setting in your nignx config file. Ensure proxy_buffering are set to "off", having proxy buffering disabled in nginx ensures all responses is sent synchronously. If the below configuration doesn't solve the issue ensure that no buffering headers are set, e.g. X-Accel-Buffering, which may be disabled using the proxy_ignore_headers setting.

server {
    server_name proxmox.xyz.com;

    location / {
            proxy_pass https://10.10.1.1:8006;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_buffering off; # ensure that proxy_buffering is set to off
            client_max_body_size 0;
            proxy_connect_timeout  3600s;
            proxy_read_timeout  3600s;
            proxy_send_timeout  3600s;
            send_timeout  3600s;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/proxmox.xyz.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/proxmox.xyz.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}