Request: feedback luci on nginx recent build

Hello, in recent build i introduced by default a module that provide direct access to ubus rpc
I need some feedback with this change...

Can someone tell me if latest master with luci on nginx works well or creates any problem?
I tested it for about 1 week but on luci github i see some guy having problem and as i don't have them i need more feedback

1 Like

Do you clean the browser cached data?

I don't have problems... I'm asking if others have

I mean if you don't clean the cached data, you may not reproduce this issue.

actually no... they are ubus request so it's all json data not cached

If it does work luci works normally... if it doesn't the webui doesn't work AT ALL

Hello! Please describe in detail your working config. Soft/packages set? Kernel settings (if any tohers than default)? Configuration files (for nginx and uwsgi)? Thank you!

I use all default. Do you still have problem ?

Yes. Trying to research a problem from time to time with no success.
Moreover, results vary from platform to platform. For example, on ASUS RT-AC68U there is no problems (in total). But on Xiaomi Mi Router WiFi 3G I have the whole spectrum of hemorrhoids that we can think of. In both cases I am using gcc 9 and different gcc switches (from Os to O3, for example) and the situation on Xiaomi not getting better...
Which router do you use?

r7800 your problem is ?

My main problem is:

#### RPCError

RPC call to luci/getFeatures failed with error -32000: Object not found at ClassConstructor.handleCallReply (https://192.168.7.99/luci-static/resources/rpc.js?v=git-19.292.31773-cc35206:12:3)

("luci/getFeatures" can be vary) on almost every page.

can you post your nginx config and luci_uwsgi.conf?

1st case: Xiaomi №1.
Getting error already on the logon page:

RPCError
RPC call to luci/getFeatures failed with error -32000: Object not found
  at ClassConstructor.handleCallReply (https://192.168.1.1/luci-static/resources/rpc.js?v=git-19.292.31773-cc35206:12:3)

Nginx config all by default.
nginx.conf:

user  root;
worker_processes  4;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile on;
    keepalive_timeout 0;

    client_body_buffer_size 10K;
    client_header_buffer_size 1k;
    client_max_body_size 1G;
    large_client_header_buffers 2 1k;

    gzip on;
    gzip_http_version 1.1;
    gzip_vary on;
    gzip_comp_level 1;
    gzip_proxied any;
    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript image/svg+xml;

    root /www;

    server {
        listen 80 default_server;
        listen [::]:80 default_server;
        server_name _;
        return 301 https://$host$request_uri;
    }

    server {
        listen 443 ssl default_server;
        listen [::]:443 ssl default_server;
        server_name  localhost;

        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        ssl_ciphers "EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:DHE+AESGCM:DHE:!RSA!aNULL:!eNULL:!LOW:!RC4:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!CAMELLIA:!SEED";
        ssl_session_tickets off;

        ssl_certificate /etc/nginx/nginx.cer;
        ssl_certificate_key /etc/nginx/nginx.key;

        location ~* .(jpg|jpeg|png|gif|ico|css|js)$ {
            expires 365d;
        }

        include luci_uwsgi.conf;

    }

    include /etc/nginx/conf.d/*.conf;
}

luci_uwsgi.conf:

location /cgi-bin/luci {
                index  index.html;
                include uwsgi_params;
                uwsgi_param SERVER_ADDR $server_addr;
                uwsgi_modifier1 9;
                uwsgi_pass unix:////var/run/luci-webui.socket;
}
location ~ /cgi-bin/cgi-(backup|download|upload|exec) {
                include uwsgi_params;
                uwsgi_param SERVER_ADDR $server_addr;
                uwsgi_modifier1 9;
                uwsgi_pass unix:////var/run/luci-cgi_io.socket;
}

location /luci-static {
}

location /ubus {
        ubus_interpreter;
        ubus_socket_path /var/run/ubus.sock;
        ubus_parallel_req 2;
}

(cleared web browser - Opera - cache)

2nd case: Xiaomi №2.
Again, getting error already on the logon page:

#### RPCError

RPC call to luci/getFeatures failed with error -32000: Object not found at ClassConstructor.handleCallReply (https://192.168.7.99/luci-static/resources/rpc.js?v=git-19.292.31773-cc35206:12:3)

nginx.conf:

user  root root;
worker_processes  8;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile on;
    keepalive_timeout 0;

    client_body_buffer_size 1M;
    client_header_buffer_size 4k;
    client_max_body_size 0;
    large_client_header_buffers 4 16k;

    gzip on;
    gzip_http_version 1.1;
    gzip_vary on;
    gzip_comp_level 1;
    gzip_proxied any;
    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript image/svg+xml;

    root /www;

    server {
        listen 80 default_server;
        listen [::]:80 default_server;
        server_name _;
        return 301 https://$host$request_uri;
    }

    server {
        listen 443 ssl default_server;
        listen [::]:443 ssl default_server;
        server_name  localhost;

        ssl_protocols TLSv1.2 TLSv1.3;
        ssl_prefer_server_ciphers on;
        ssl_ciphers "EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:DHE+AESGCM:DHE:!RSA!aNULL:!eNULL:!LOW:!RC4:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!CAMELLIA:!SEED";
        ssl_session_tickets on;

        ssl_certificate /etc/nginx/nginx.cer;
        ssl_certificate_key /etc/nginx/nginx.key;

        location ~* .(jpg|jpeg|png|gif|ico|css|js)$ {
            expires 365d;
        }

        include luci_uwsgi.conf;

    }

    include /etc/nginx/conf.d/*.conf;
}

luci_uwsgi.conf:

location /cgi-bin/luci {
                index  index.html;
                include uwsgi_params;
                uwsgi_param SERVER_ADDR $server_addr;
                uwsgi_modifier1 9;
                uwsgi_pass unix:////var/run/luci-webui.socket;
}
location ~ /cgi-bin/cgi-(backup|download|upload|exec) {
                include uwsgi_params;
                uwsgi_param SERVER_ADDR $server_addr;
                uwsgi_modifier1 9;
                uwsgi_pass unix:////var/run/luci-cgi_io.socket;
}

location /luci-static {
}

location /ubus {
        ubus_interpreter;
        ubus_socket_path /var/run/ubus.sock;
        ubus_parallel_req 4;
}

with latest commits correct?

1 Like

If you asking about my current build(s):

OpenWrt SNAPSHOT, r12034-1322190fd3

If you changed something and asking about how is it, then I need some time to make new build.

Wooooooow! Now it seems very good! It's delicious! Thank you!
What was wrong?

News on this?

Its all OK for me now!
Maybe someone else?