This question has been flagged
2 Replies
14425 Views

Hello,

We're migrating from old server to a new one, so I've installed Odoo V10.0 on Ubuntu 16.04LTS hosted on Digitalocean.

Everything works just fine, but when I used reverse proxy to access Odoo from port 80 instead of the default 8069 according to \this book and upload the old db, all the JS and CSS/LESS files give 404 not found on the website and I get Error 111 connection refused when the server tries to redirect to the online payment gateway.

Here's a screenshot of the error I receive in console

 

Here's my Nginx configuration in /etc/nginx/sites-available/odoo:


    upstream backend-odoo {
     server 127.0.0.1:8069;
    }
    upstream backend-odoo-im { 
     server 127.0.0.1:8072; 
    }
    server {
     listen 80;
     add_header Strict-Transport-Security max-age=2592000;
     rewrite ^/.*$ https://$host$request_uri? permanent;
    }
    server {
     listen 443 default;
     # ssl settings
     ssl on;
     ssl_certificate
     /etc/nginx/ssl/cert.pem;
     ssl_certificate_key /etc/nginx/ssl/key.pem;
     keepalive_timeout 60;
    
     #increase the upload file size limit
     client_max_body_size 30M;
    
     # proxy header and settings
     proxy_set_header Host $host;
     proxy_set_header X-Real-IP $remote_addr;
     proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
     proxy_set_header X-Forwarded-Proto $scheme;
     proxy_redirect off;
    
     # odoo log files
     access_log /var/log/nginx/odoo-access.log;
     error_log /var/log/nginx/odoo-error.log;
     # increase proxy buffer size
     proxy_buffers 16 64k;
     proxy_buffer_size 128k;
     # force timeouts if the backend dies
     proxy_next_upstream error timeout invalid_header http_500
     http_502 http_503;
     # enable data compression
     gzip on;
     gzip_min_length 1100;
     gzip_buffers 4 32k;
     gzip_types text/plain application/x-javascript text/xml text/css;
     gzip_vary on;
    
     location / {
      proxy_pass http://backend-odoo;
     }
     location ~* /web/static/ {
     # cache static data
     proxy_cache_valid 200 60m;
     proxy_buffering on;
     expires 864000;
     proxy_pass http://backend-odoo;
     }
     location /longpolling { 
      proxy_pass http://backend-odoo-im;
     }
    }


Here's Odoo conf file:


    [options]
    addons_path = /odoo/enterprise/addons,/odoo/odoo-server/addons,/odoo/custom/addons,/odoo/server-tools
    admin_passwd = xxxxxxxxxxx
    csv_internal_sep = ,
    data_dir = /odoo/.local/share/Odoo
    db_host = False
    db_maxconn = 64
    db_name = False
    db_password = False
    db_port = False
    db_template = template1
    db_user = xxxx
    dbfilter = .*
    demo = {}
    email_from = False
    geoip_database = /usr/share/GeoIP/GeoLiteCity.dat
    import_partial = 
    limit_memory_hard = 2684354560
    limit_memory_soft = 2147483648
    limit_request = 8192
    limit_time_cpu = 60
    limit_time_real = 120
    limit_time_real_cron = -1
    list_db = True
    log_db = False
    log_db_level = warning
    log_handler = :INFO
    log_level = info
    logfile = /var/log/odoo/odoo-server.log
    logrotate = False
    longpolling_port = 8072
    max_cron_threads = 2
    osv_memory_age_limit = 1.0
    osv_memory_count_limit = False
    pg_path = None
    pidfile = None
    proxy_mode = True
    reportgz = False
    server_wide_modules = web,web_kanban
    smtp_password = False
    smtp_port = 25
    smtp_server = localhost
    smtp_ssl = False
    smtp_user = False
    syslog = False
    test_commit = False
    test_enable = False
    test_file = False
    test_report_directory = False
    translate_modules = ['all']
    unaccent = False
    without_demo = False
    workers = 0
    xmlrpc = True
    netrpc_interface = 127.0.0.1
    xmlrpc_interface = 127.0.0.1
    xmlrpc_port = 8069


Here's the output of log file in /var/log/nginx/odoo-error.log


    2017/04/01 06:55:24 [error] 24333#24333: *3196 connect() failed (111: Connection refused) while connecting to upstream, client: xx.xx.xxx.xxx, server: , request: "GET /web_planner/static/src/img/odoo_logo.png HTTP/1.1", upstream: "http://127.0.0.1:8069/web_planner/static/src/img/odoo_logo.png", host: "yyy.yy.yyy.yy", referrer: "https://yyy.yy.yyy.yy/?debug=1"
    2017/04/01 06:55:25 [error] 24333#24333: *3495 upstream prematurely closed connection while reading response header from upstream, client: xx.xx.xxx.xxx, server: , request: "POST /longpolling/poll HTTP/1.1", upstream: "http://127.0.0.1:8069/longpolling/poll", host: "yyy.yy.yyy.yy", referrer: "https://yyy.yy.yyy.yy/web?debug="
    2017/04/01 07:01:29 [error] 24333#24333: *4263 upstream prematurely closed connection while reading response header from upstream, client: xx.xx.xxx.xxx, server: , request: "POST /longpolling/poll HTTP/1.1", upstream: "http://127.0.0.1:8069/longpolling/poll", host: "yyy.yy.yyy.yy", referrer: "https://yyy.yy.yyy.yy/web?"
    2017/04/01 08:03:12 [error] 30741#30741: *5413 upstream prematurely closed connection while reading response header from upstream, client: xx.xx.xxx.xxx, server: , request: "POST /longpolling/poll HTTP/1.1", upstream: "http://127.0.0.1:8069/longpolling/poll", host: "yyy.yy.yyy.yy", referrer: "https://yyy.yy.yyy.yy/web?debug=1"
    2017/04/01 08:17:38 [error] 30741#30741: *5491 upstream prematurely closed connection while reading response header from upstream, client: xx.xx.xxx.xxx, server: , request: "POST /longpolling/poll HTTP/1.1", upstream: "http://127.0.0.1:8069/longpolling/poll", host: "yyy.yy.yyy.yy", referrer: "https://yyy.yy.yyy.yy/web?debug=1"
    2017/04/01 08:35:15 [error] 30741#30741: *6308 upstream timed out (110: Connection timed out) while reading response header from upstream, client: xx.xx.xxx.xxx, server: , request: "POST /longpolling/poll HTTP/1.1", upstream: "http://127.0.0.1:8069/longpolling/poll", host: "yyy.yy.yyy.yy", referrer: "https://yyy.yy.yyy.yy/web?debug="
    2017/04/01 08:46:38 [error] 30741#30741: *6897 upstream prematurely closed connection while reading response header from upstream, client: xx.xx.xxx.xxx, server: , request: "POST /longpolling/poll HTTP/1.1", upstream: "http://127.0.0.1:8069/longpolling/poll", host: "yyy.yy.yyy.yy", referrer: "https://yyy.yy.yyy.yy/web?debug="


the output of $`netstat -ntlp | grep LISTEN`


    tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      -                          
    tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN -               
    tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN -                            
    tcp 0 0 127.0.0.1:8069 0.0.0.0:* LISTEN -  


Lastly the output of $`telnet 127.0.0.1 8069`


    Trying 127.0.0.1...
    Connected to 127.0.0.1.
    Escape character is '^]'.


the output of $`telnet 127.0.0.1 8072`


    Trying 127.0.0.1...
    telnet: Unable to connect to remote host: Connection refused


the output of $`telnet 127.0.0.1`


    Trying 127.0.0.1...
    telnet: Unable to connect to remote host: Connection refused

PS. I didn't apply the SSL certificate yet or the domain name.

Avatar
Discard
Best Answer

Did you find a solution to your issue?

Avatar
Discard
Best Answer

You need to increase these numbers in odoo config file. Your worker is getting killed because it reaches max cpu usage time. Either increase those numbers or optimize your code.

limit_time_cpu = 60
limit_time_real = 120
Avatar
Discard