wake-up-neo.com

nginx + uwsgi: - nicht verfügbarer Modifikator angefordert: 0 -

Ubuntu 12.04, nginx 1.2.0, uwsgi 1.0.3.

Ich starte uwsgi mit dem folgenden Befehl:

uwsgi -s 127.0.0.1:9010 -M -t 30 -A 4 -p 4 -d /var/log/uwsgi.log

Bei jeder Anfrage antwortet nginx mit 502 und uwsgi schreibt, um die folgende Zeile zu protokollieren:

-- unavailable modifier requested: 0 --
76
Lisio

Ursprüngliche Antwort

Installieren Sie für Python 2 unter Ubuntu 11.10 mit upstart das Plugin python für uWSGI mit apt-get install uwsgi-plugin-python und wenn Sie eine INI-Datei verwenden, um Ihre uWSGI App zu konfigurieren, dann fügen Sie plugins = python zum [uwsgi] Abschnitt und es sollte dieses Problem lösen.

Bearbeiten: Aktualisiert für Python 3 und Ubuntu 17.10

Installieren Sie für Python 3 unter Ubuntu 17.10 mit systemd das Plugin python für uWSGI mit apt-get install uwsgi-plugin-python3 und wenn Sie eine INI-Datei verwenden, um Ihre uWSGI App zu konfigurieren, dann fügen Sie plugins = python zum [uwsgi] Abschnitt und es sollte dieses Problem lösen.

Weitere Informationen zu den ersten Schritten mit python/uWSGI Apps, einschließlich deren Konfiguration mithilfe einer ini Datei, finden Sie in dieser praktischen Anleitung

102
SHaKie

Gelöst durch Installation von uwsgi-plugin-python3 Plugin und Hinzufügen von --plugin python3 Option auf uwsgi Startbefehl

22
Lisio

Ich starte uwsgi von upstart auf Ubuntu. Ich habe das Problem gelöst, indem ich apt-get install uwsgi-plugin-python Ausgeführt und dann plugins=python Zu meiner application.ini in/etc/uwsgi/applications-available hinzugefügt habe.

15
shane

from http://uwsgi-docs.readthedocs.org/en/latest/ThingsToKnow.html "Um Anfragen an ein bestimmtes Plugin weiterzuleiten, muss der Webserver eine magische Nummer übergeben, die als Modifikator bezeichnet wird die uWSGI-Instanzen. Standardmäßig ist diese Nummer auf 0 gesetzt, was Python zugeordnet ist. "

Ich benutze 9 für ein Bash-Skript und es funktioniert. Die Zahlen und ihre Bedeutung finden Sie auf dieser Seite: http://uwsgi-docs.readthedocs.org/en/latest/Protocol.html

in meiner Nginx-Konfiguration:

location ~ .cgi$ {
    include uwsgi_params;
    uwsgi_modifier1 9;
    uwsgi_pass 127.0.0.1:3031;
}
6
jcomeau_ictx