server {
    listen 80;
    server_name _;
    root /ragflow/web/dist;

    gzip on;
    gzip_min_length 1k;
    gzip_comp_level 9;
    gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
    gzip_vary on;
    gzip_disable "MSIE [1-6]\.";

    location ~ ^/api/v1/admin/roles_with_permission {
        proxy_pass http://127.0.0.1:9381;
        include proxy.conf;
    }

    location ~ ^/api/v1/admin/sandbox {
        proxy_pass http://127.0.0.1:9381;
        include proxy.conf;
    }

    location ~ ^/api/v1/admin/roles {
        proxy_pass http://127.0.0.1:9381;
        include proxy.conf;
    }

    location ~ ^/api/v1/admin/whitelist {
        proxy_pass http://127.0.0.1:9381;
        include proxy.conf;
    }

    location ~ ^/api/v1/admin/variables {
        proxy_pass http://127.0.0.1:9381;
        include proxy.conf;
    }

    location ~ ^/api/v1/admin {
        proxy_pass http://127.0.0.1:9383;
        include proxy.conf;
    }

    location ~ ^/api/v1/skills {
        proxy_pass http://127.0.0.1:9384;
        include proxy.conf;
    }

    location ~ ^/v1/system/config {
        proxy_pass http://127.0.0.1:9384;
        include proxy.conf;
    }

    location ~ ^/v1/user/(login|logout) {
        proxy_pass http://127.0.0.1:9384;
        include proxy.conf;
    }

    location ~ ^/(v1|api) {
        proxy_pass http://127.0.0.1:9380;
        include proxy.conf;
    }

    location / {
        index index.html;
        try_files $uri $uri/ /index.html;
    }

    # Cache-Control: max-age Expires
    location ~ ^/static/(css|js|media)/ {
        expires 10y;
        access_log off;
    }
}