Математика - uWSGI / django & nginx 400 Плохой запрос - PullRequest
0 голосов
/ 09 ноября 2018

Я пытаюсь настроить materialllo в Ubuntu 16.04.5 LTS

Когда я запускаю сервер вручную через python manage.py runserver, без nginx, хуки создаются успешно.

Но, когда я пытаюсь поднять вещи через uWSGI за nginx

LE: Та же проблема с ганкорном вместо nginx

delete trello hook :: result=[]
create trello hook :: callback=http://matterllo.x.com:8080/callback/1/ :: board=amazon-argila :: result=False
create trello hook :: callback=http://matterllo.x.com:com:8080/callback/2/ :: board=apiscrm :: result=False
create trello hook :: callback=http://matterllo.x.com:8080/callback/2/ :: board=apiscrm :: result=False

Я обнаружил, что "Ложь" означает 400 Плохой запрос

LE: Найдено, что 403:

create trello hook :: callback=https://matterllo.x.com:8443/callback/1/ :: board=amazon-argila :: result=URL (https://matterllo.x.com:8443/callback/1/) not reachable. Error: tunneling socket could not be established, statusCode=403 create trello hook :: callback=https://matterllo.x.com:8443/callback/2/ :: board=apiscrm :: result=URL (https://matterllo.x.com:8443/callback/2/) not reachable. Error: tunneling socket could not be established, statusCode=403 create trello hook :: callback=https://matterllo.x.com:8443/callback/2/ :: board=apiscrm :: result=URL (https://matterllo.x.com:8443/callback/2/) not reachable. Error: tunneling socket could not be established, statusCode=403

Конфигурация nginx:

server {
    listen 8080;
    server_name matterllo.x.com;

   location / {
    include uwsgi_params;
        uwsgi_ignore_client_abort on;
    uwsgi_pass unix:/home/silviu/uwsgi/trello.sock;
   }
}

uwsgi ini config:

home = /home/silviu/matterllo/venv
chdir = /home/silviu/matterllo
wsgi-file = /home/silviu/matterllo/matterllo/wsgi.py
logger = file:/home/silviu/uwsgi/sites/trello.log
socket = /home/silviu/uwsgi/trello.sock
vacuum = true
master=true
chown-socket = silviu:www-data
chmod-socket = 666
uid = silviu
gid = www-data
die-on-term = true
module=run:app

/ и т.д. / Systemd / система / uwsgi.service

[Unit]
Description=uWSGI Emperor service
[Service]
ExecStartPre=/bin/bash -c 'mkdir -p /run/uwsgi; chown silviu:www-data /run/uwsgi'
ExecStart=/usr/local/bin/uwsgi --emperor /home/silviu/uwsgi/sites
Restart=always
KillSignal=SIGQUIT
Type=notify
NotifyAccess=all
[Install]
WantedBy=multi-user.target

И это метод create hook, но я не думаю, что источником проблемы является:

 def create_hook(self, callback_url, id_model, desc=None, token=None):
        """
        Creates a new webhook. Returns the WebHook object created.

        There seems to be some sort of bug that makes you unable to create a
        hook using httplib2, so I'm using urllib2 for that instead.
        """
        token = token or self.resource_owner_key

        if token is None:
            raise TokenError("You need to pass an auth token in to create a hook.")

        url = "https://trello.com/1/tokens/%s/webhooks/" % token
        data = {'callbackURL': callback_url, 'idModel': id_model,
                'description': desc}

        response = requests.post(url, data=data, auth=self.oauth)

        if response.status_code == 200:
            hook_id = response.json()['id']
            return WebHook(self, token, hook_id, desc, id_model, callback_url, True)
        else:
            return False

У меня нет большого опыта работы с Python, но я думаю, что это проблема с uWSGI.

...