uwsgi-plugin-rack won't work
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
uWSGI Ubuntu package |
New
|
Undecided
|
Unassigned |
Bug Description
Пишу на русском, если нужно могу перевести.
Никак не могу заставить работать uwsgi в качестве сервера для Rails
проекта (Redmine) и нигде не могу найти информации по настройке этой
связки. Возможно вы сможете подсказать...
Есть подозрение что не работает по причине того, что uWSGI версии
0.9.6.8 а плагин официально доступен с 0.9.7... Но ведь в PPA он есть.
Опишу окружение:
Есть Nginx конфиг
server {
listen 80;
server_name redmine.seriyps.ru;
access_log /var/log/
root /home/redmine/
location / {
}
location @fallback {
include uwsgi_params;
}
}
(взято отсюда http://
Есть конфиг UWSGI
[uwsgi]
plugins = rack
socket = :3031
uid = redmine
master = true
processes = 2
rails = /home/redmine/
post-buffering = 4096
env = RAILS_ENV=
(взято отсюда http://
)
И установлены пакеты
pB uwsgi
i A uwsgi-common
i uwsgi-plugin-rack
iB uwsgi-python
$: uwsgi-python --version
uWSGI 0.9.6.8
Сервер uwsgi запускается, но при обращении к redmine.seriyps.ru
возвращается 500 а в лог пишет
Sat Aug 13 16:55:06 2011 - -- unavailable modifier requested: 7 --
если убрать из конфига Nginx параметр
то в лог пишет
[pid: 15155|app: -1|req: -1/3] 89.178.167.140 () {40 vars in 700
bytes} [Sat Aug 13 16:57:31 2011] GET / => generated 46 bytes in 0
msecs (HTTP/1.1 500) 2 headers in 63 bytes (0 async switches on async
core 0)
но возвращает страничку 500:
uWSGI Error
wsgi application not found
Опять-же, если я правильно понял, пакет uwsgi-plugin-rack - это
разделяемая библиотека - плагин UWSGI. Т.е. для ее активации нужна
опция plugins = rack в конфиге либо параметр командной строки
--plugins rack, но при запуске из командной строки с параметром
--plugins
sudo uwsgi-python --plugins rack
--ini=/
выдает
uwsgi-python: unrecognized option '--plugins'
Как выяснилось, в репозитории плагин версии 0.9.6.8 и для него параметры запуска немного другие
[uwsgi] redmine- 1.2.1/ production
rack = true
socket = :3031
uid = redmine
master = true
processes = 2
chdir = /home/redmine/
post-buffering = 4096
env = RAILS_ENV=
При таких настройках uWSGI начинает понимать uwsgi_modifier1 7; но работать все еще отказывается - пишет в лог:
Sun Aug 14 19:33:55 2011 - [uWSGI] getting INI configuration from python/ apps-enabled/ redmine. ini uwsgi-python/ redmine/ pid --gid/- -chroot options rack/rack_ plugin. c line 150] configuration. yml using the email_delivery setting.
/etc/uwsgi-
Sun Aug 14 19:33:55 2011 - *** Starting uWSGI 0.9.6.8 (64bit) ***
Sun Aug 14 19:33:55 2011 - compiled with version: 4.4.3
Sun Aug 14 19:33:55 2011 - Python version: 2.6.5 (r265:79063, Apr 162010, 14:15:55) [GCC 4.4.3]
Sun Aug 14 19:33:55 2011 - writing pidfile to /var/run/
Sun Aug 14 19:33:55 2011 - uWSGI running as root, you can use--uid/
Sun Aug 14 19:33:55 2011 - setgid() to 33
Sun Aug 14 19:33:55 2011 - setuid() to 1001
Sun Aug 14 19:33:55 2011 - your memory page size is 4096 bytes
Sun Aug 14 19:33:55 2011 - allocated 648 bytes (0 KB) for 1 request's buffer.
Sun Aug 14 19:33:55 2011 - binding on TCP port: 3031
Sun Aug 14 19:33:55 2011 - your server socket listen backlog is limited to 100 connections
Sun Aug 14 19:33:55 2011 - initializing hooks...Sun Aug 14 19:33:55 2011 - done.
Sun Aug 14 19:33:55 2011 - chdir(): No such file or directory [plugins/
Storing outgoing emails configuration in config/email.yml is deprecated. You should now store it in config/
Sun Aug 14 19:34:11 2011 - ruby ready
Sun Aug 14 19:34:11 2011 - OK 0x7f1f8e904200
Sun Aug 14 19:34:11 2011 - spawned uWSGI master process (pid: 28971)
Sun Aug 14 19:34:11 2011 - max_ovec = 0
Sun Aug 14 19:34:11 2011 - spawned uWSGI worker 1 (pid: 28989)
Sun Aug 14 19:34:11 2011 - spawned uWSGI worker 2 (pid: 28990)
при обращении к странице
[pid: 28989|app: -1|req: -1/1] 95.26.156.153 () {42 vars in 925 bytes} [Sun Aug 14 19:34:25 2011] GET / => generated 46 bytes in 0 msecs (HTTP/1.1 500) 2 headers in 63 bytes (0 async switches on async core 0)
но вместо ответа отображает
uWSGI Error
wsgi application not found
Продолжу изыскания