502 bad gateway error pops up on saving data to the db.
Once the user logs into the django app (OLE 7). Data is pulled regarding that user from ldap server and saved in my local db(postgres). It worked perfectly fine on local server after configuring nginx, gunicorn once the user logs into the website instead of displaying retrieved data it shows 502 Bad gateway. I went thru a lot of stackoverflow post regarding this, some said increase the timeout, check gunicorn is running. I have already tried all this but it still wont work.
nginx.conf
user nginx;
worker_processes 2;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
er nginx;
worker_processes 2;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 300;
#gzip on;
upstream app_server {
server 10.111.xxx.xxx:8001 fail_timeout=0;
}
server{
listen 80;
server_name 10.111.xxx.xxx;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {root /home/lisa/revcon;}
location / {
proxy_set_header Host $http_host;
proxy_set_header Connection "";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://unix:/home/lisa/revcon/revcon.sock;
proxy_connect_timeout 500s;
proxy_read_timeout 600s;
}
views.py
def save_information(request):
associate_id = id_to_numeric(request.user.username)
ldap = Ldap()
associate_details = ldap.search(associate_id=associate_id)[0]
details = UserDetails(
associate_name=associate_details['name'],
associate_nbr=associate_id,
associate_email=associate_details['email'],
associate_department_id=id_to_numeric(associate_details['department']),
associate_mgr=associate_details['managerCN'],
associate_exec=associate_details['execCN'],
associate_org=associate_details['org'],
associate_image=img,
date_of_service=rcm_date,
title=associate_details['title'],
client=client,
lob=lob,
phone_number=associate_details['mobile'],
)
details.save()
messages.success(request, 'Profile created! ')
return redirect('/?submit=true')
nginx error log looks like this:
2019/05/15 04:01:55 [error] 7602#7602: *1 upstream prematurely closed connection while reading response header from upstream, client: 10.111.044.xxx, server: 10.111.xxx.xxx, request: "POST /save_information HTTP/1.1", upstream: "http://unix:/home/lisa/revcon/revcon.sock:/save_information", host: "10.111.xxx.xxx", referrer: "http://10.111.xxx.xxx/pr/"
gunicorn
SELECT "django_session"."session_key", "django_session"."session_data", "django_session"."expire_date" FROM "django_session" WHERE ("django_session"."session_key" = 'hzy3dsjxfzqxhds6kd5uyteux0gps9d1' AND "django_session"."expire_date" > '2019-05-15T09:04:53.974657+00:00'::timestamptz); args=('hzy3dsjxfzqxhds6kd5uyteux0gps9d1', datetime.datetime(2019, 5, 15, 9, 4, 53, 974657, tzinfo=))
(0.001) SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" FROM "auth_user" WHERE "auth_user"."id" = 1; args=(1,)
(0.001) SELECT (1) AS "a" FROM "CollectData_userdetails" WHERE "CollectData_userdetails"."associate_nbr" = '050667' LIMIT 1; args=(u'050667',)
Exception while resolving variable 'img' in template 'CreateUser.html'.
Traceback (most recent call last):
File "/home/lisa/revcon/env/lib/python2.7/site-packages/django/template/base.py", line 903, in _resolve_lookup
(bit, current)) # missing attribute
VariableDoesNotExist: Failed lookup for key [img] in u'[{\'False\': False, \'None\': None, \'True\': True}, {u\'csrf_token\': , \'user\': >, \'perms\': , \'DEFAULT_MESSAGE_LEVELS\': {\'DEBUG\': 10, \'INFO\': 20, \'WARNING\': 30, \'SUCCESS\': 25, \'ERROR\': 40}, \'messages\': , u\'request\': }, {}, {\'form\': }, {\'block\': \n, , \n\n\n\n, , , , Associate \'>, , , , , , , , , , \n\n\t\t\t , , \\n\\t\\t\\t , , \\n]>}]'
Exception while resolving variable 'tag' in template 'bootstrap4/field.html'.
It hits this url url('save_information', views.save_information, name='save_information'), and then fails. 502 error.