2013-04-29 16 views
11

Próbuję konfiguracji uWSGI z Pyramid, ale ja dostaję ten błąd, gdy próbuje uwsgi --ini-paste development.iniuWSGI katastrofy z nr moduł o nazwie kodowania błąd

Python version: 3.2.3

komunikat o błędzie:

uwsgi socket 0 bound to UNIX address /tmp/uwsgi.sock fd 3 
Python version: 3.2.3 (default, Oct 19 2012, 20:08:46) [GCC 4.6.3] 
Set PythonHome to /root/path/to/virtualenv 
Fatal Python error: Py_Initialize: Unable to get the locale encoding 
ImportError: No module named encodings 

Tu jest to, co mam w development.ini

[uwsgi] 
socket = /tmp/uwsgi.sock 
master = true 


processes = 4 

harakiri = 60 
harakiri-verbose = true 
limit-post = 65536 
post-buffering = 8192 

daemonize = ./uwsgi.log 
pidfile = ./pid_5000.pid 

listen = 256 

max-requests = 1000 

reload-on-as = 128 
reload-on-rss = 96 
no-orphans = true 

log-slow = true 
virtualenv = /root/path/to/virtualenv 

Przypuszczam Sprawdziłem wszystko, co możliwe, łącznie z następującym

echo LANG:$LANG LC_CTYPE:$LC_CTYPE 
LANG:en_US.UTF-8 LC_CTYPE: 

używam virtualenv i uWSGI został zainstalowany podczas gdy środowisko było aktywne. Mam również sprawdził, że lib moim wirtualnym środowisku zawiera pakiecie o nazwie kodowanie (wskazując na mój główny instalacji python3.2)

Mam również sprawdzone this odpowiedź i this

miałem wcześniej zainstalowane uWSGI kiedy mój virtualenv nie było aktywne, ale potem zainstalowałem go poprawnie i usunąłem pliki wykonywalne i py z poprzedniej instalacji.

Czy istnieje sposób, aby uzyskać szczegółowe dzienniki, proszę dać mi znać, jeśli istnieje. Z góry dzięki

Odpowiedz

2

w moim przypadku było w zasadzie dlatego, że użyłem Pythona 2.7 jako głównego tłumacza, a uwsgi wybrać wtyczkę pyhon3. Być może trzeba go zmusić, używając:

plugins = python32

gdzie python32 jest odpowiednią nazwę dla swojej wtyczki pythhon3.

Czy sprawdziłeś to: uwsgi python3 plugin doesn't work?

0

polecenie Run uwsgi (z opcjami), podobnie jak następujący wiersz:

/<path-to-your-virtualenv-bin>/uwsgi --http :8008 --module project.wsgi --venv /<path-to-your-virtualenv> --chdir /<path-to-your-project>

Znajdziesz problemów.

Czy przegapiłeś swój moduł param?

2

Ten problem również spotkałem się dzisiaj i próbowałem ustawić plugins=python34, ale nie działało to na Ubuntu 14.04 i Pythonie 3.4.3

To co zrobiłem to naprawić:

  1. sudo pip uninstall uwsgi

  2. coś idzie źle, gdy biegnę sudo pip install uwsgi i uruchomić ten pierwszy:

    sudo apt-get install python-dev

  3. (sudo)pip install uwsgi

0

Po prostu miał ten sam problem. Później zrozumiałem, że zainstalowałem uwsgi z pip install uwsgi w virtualenv. Kiedy opuściłem virtualenv, zainstalowałem uwsgi w lokalnym systemie z pip3 install uwsgi (zauważ, że napisałem pip zamiast pip3). Więc odinstalowałem z pip3 uninstall uwsgi i powtórzyłem z pip install uwsgi. Pracował jak urok.

4

Sprawdź,

virtualenv = /root/path/to/virtualenv 

wskazuje na właściwej ścieżce. Rozwiązałem swój błąd, naprawiając tę ​​błędnie wpisaną ścieżkę.

+0

Chociaż może się to wydawać oczywiste, dziś na to zasłużyłem. Dlaczego, na litość boską, nie może być komunikat o błędzie oznaczający, że ścieżka wirtualizmu nie istnieje? Bóg i uwsgi zna tylko odpowiedź na to pytanie –

Powiązane problemy