Skip to Content
Menu
This question has been flagged

I have an installation that was working "ok" in our lab that I have recently migrated to production and since then I have an error 502 when I try to access the "Send by mail" button on any quotation. 

Everything is wired correctly (AFAICT) and we have followed your guidelines for the nginx deployment. 

Only thing which has changed from testing to deployment are the IP addresses, because It is simply not the same network and also the Nginx proxy which has been configured in the loop… 


Quite annoying to be facing this as a new subscriber ! 

Hope you can help solve this rapidly. 





Nginx configuration: 

#odoo server
upstream odoo {
server 192.168.xx.yy:9080;
}
upstream odoochat {
server 192.168.xx.yy:8072;
}
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}

# http -> https
server {
listen 80;
server_name open.domain.com;
rewrite ^(.*) https://$host$1 permanent;
}

server {
listen 443 ssl;
server_name open.domain.com;
proxy_read_timeout 720s;
proxy_connect_timeout 720s;
proxy_send_timeout 720s;

# SSL parameters
ssl_certificate /etc/nginx/ssl/domain.com.crt;
ssl_certificate_key /etc/nginx/ssl/domain.com.key;

ssl_session_timeout 30m;
ssl_protocols TLSv1.2;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_prefer_server_ciphers off;

# log
access_log /var/log/nginx/open.domain.access.log;
error_log /var/log/nginx/open.domain.error.log;

# Redirect websocket requests to odoo gevent port
location /websocket {
# proxy_redirect off;
proxy_pass http://odoochat;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
}

# Redirect longpoll requests to odoo longpolling port
#location /longpolling {
# proxy_pass http://odoochat;
#}

# Redirect requests to odoo backend server
location / {
# Add Headers for odoo proxy mode
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_redirect off;
proxy_pass http://odoo;
}

# Serve odoo files locally rahter than through odoo server for better perf
location @odoo {
# copy-paste the content of the / location block
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_redirect off;
proxy_pass http://odoo;
}

# Serve static files right away
location ~ ^/[^/]+/static/.+$ {
root /usr/lib/python3/dist-packages/odoo/addons;
try_files $uri @odoo;
expires 24h;
}


# common gzip
gzip_types text/css text/scss text/plain text/xml application/xml application/json application/javascript;
gzip on;
}


Odoo configuration: 

[options]
admin_passwd = obviously_secret
xmlrpc_port = 9080
gevent_port = 8072
logfile = /var/log/odoo/odoo-server.log
db_host = False
db_port = False
db_user = odoo
db_password = False
addons_path = /usr/lib/python3/dist-packages/odoo/addons
default_productivity_apps = True
proxy_mode = True
workers = 3



Here are the errors from nginx:

2023/09/20 09:05:25 [error] 1266818#1266818: *13042 upstream prematurely closed connection while reading response header from upstream, client: 109.xx.yy.183, server: open.domain.com, request: "POST /web/dataset/call_kw/mail.compose.message/onchange HTTP/1.1", upstream: "http://192.168.xx.yy:9080/web/dataset/call_kw/mail.compose.message/onchange", host: "open.domain.com", referrer: "https://open.domain.com/web"

109.xx.yy.183 - - [20/Sep/2023:09:05:25 +0200] "POST /web/dataset/call_kw/mail.compose.message/onchange HTTP/1.1" 502 166 "https://open.open.com/web" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) Gecko/20100101 Firefox/117.0"


And the errors from odoo : 
2023-09-20 07:18:12,978 1023 INFO odoo werkzeug: 10.100.100.144 - - [20/Sep/2023 07:18:12] "GET /websocket HTTP/1.1" 500 - 2 0.000 0.002
2023-09-20 07:18:48,876 152 INFO odoo odoo.addons.base.models.ir_cron: Starting job `Mail: Fetchmail Service`.
2023-09-20 07:18:48,878 152 INFO odoo odoo.addons.mail.models.fetchmail: start checking for new emails on imap server dynmail
2023-09-20 07:18:48,890 152 INFO odoo odoo.addons.mail.models.fetchmail: Fetched 0 email(s) on imap server dynmail; 0 succeeded, 0 failed.
2023-09-20 07:18:48,892 152 INFO odoo odoo.addons.base.models.ir_cron: Job `Mail: Fetchmail Service` done.
2023-09-20 07:19:14,180 699 ERROR odoo odoo.http: Exception during request handling.
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 1998, in __call__
    response = request._serve_db()
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 1584, in _serve_db
    return service_model.retrying(self._serve_ir_http, self.env)
  File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 133, in retrying
    result = func()
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 1611, in _serve_ir_http
    response = self.dispatcher.dispatch(rule.endpoint, args)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 1725, in dispatch
    return self.request.registry['ir.http']._dispatch(endpoint)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_http.py", line 154, in _dispatch
    result = endpoint(**request.params)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 697, in route_wrapper
    result = endpoint(self, *args, **params_ok)
  File "/usr/lib/python3/dist-packages/odoo/addons/bus/controllers/websocket.py", line 23, in websocket
    return WebsocketConnectionHandler.open_connection(request)
  File "/usr/lib/python3/dist-packages/odoo/addons/bus/websocket.py", line 817, in open_connection
    Websocket(request.httprequest.environ['socket'], request.session),
KeyError: 'socket'
2023-09-20 07:19:14,180 699 INFO odoo werkzeug: 10.100.100.144 - - [20/Sep/2023 07:19:14] "GET /websocket HTTP/1.1" 500 - 2 0.000 0.002
2023-09-20 07:20:14,465 699 ERROR odoo odoo.http: Exception during request handling.
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 1998, in __call__
    response = request._serve_db()
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 1584, in _serve_db
    return service_model.retrying(self._serve_ir_http, self.env)
  File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 133, in retrying
    result = func()
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 1611, in _serve_ir_http
    response = self.dispatcher.dispatch(rule.endpoint, args)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 1725, in dispatch
    return self.request.registry['ir.http']._dispatch(endpoint)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_http.py", line 154, in _dispatch
    result = endpoint(**request.params)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 697, in route_wrapper
    result = endpoint(self, *args, **params_ok)
  File "/usr/lib/python3/dist-packages/odoo/addons/bus/controllers/websocket.py", line 23, in websocket
    return WebsocketConnectionHandler.open_connection(request)
  File "/usr/lib/python3/dist-packages/odoo/addons/bus/websocket.py", line 817, in open_connection
    Websocket(request.httprequest.environ['socket'], request.session),
KeyError: 'socket'




P.S. creating automatic link and forbiding link publication is kind of… stupid !

Avatar
Discard
Related Posts Replies Views Activity
1
Jan 24
3800
0
Sep 23
1352
1
Jul 23
3397
4
Jun 25
8516
2
Oct 24
7461