Acabei de usar o Phusion Passenger para executar meu aplicativo. Foi tão simples como configurar e executar o Nginx.
Estou tentando implantar um aplicativo python no meu Ubuntu 12.04.1 VPS executando Nginx / uWSGI. Configurei meu servidor seguindo este guia . Quando eu reinicio o uWSGI, recebo esta mensagem:
nickd@my-vps:~$ sudo /etc/init.d/uwsgi restart
[sudo] password for nickd:
* Restarting app server(s) uwsgi
[uWSGI] getting INI configuration from /usr/share/uwsgi/conf/default.ini
[uWSGI] parsing config file /etc/uwsgi/apps-enabled/application.net.xml
open("./python_plugin.so"): No such file or directory [core/utils.c line 4700]
!!! UNABLE to load uWSGI plugin: ./python_plugin.so: cannot open shared object file: No such file or directory !!! Tue Dec 11
15:18:06 2012 - [WARNING] option "app" is deprecated: use the more advanced "mount" option
Meu application.net.xml:
<uwsgi>
<plugin>python</plugin>
<socket>/run/uwsgi/app/application.net/application.net.socket</socket>
<pythonpath>/var/www/apps/application/</pythonpath>
<app mountpoint="/">
<script>wsgi_configuration_module</script>
</app>
<master/>
<processes>4</processes>
<harakiri>60</harakiri>
<reload-mercy>8</reload-mercy>
<cpu-affinity>1</cpu-affinity>
<stats>/tmp/stats.socket</stats>
<max-requests>2000</max-requests>
<limit-as>512</limit-as>
<reload-on-as>256</reload-on-as>
<reload-on-rss>192</reload-on-rss>
<no-orphans/>
<vacuum/>
</uwsgi>
Minha configuração INI é padrão.
Qualquer ajuda para obter o uWSGI para carregar o plug-in python será bem-vinda.
Acabei de usar o Phusion Passenger para executar meu aplicativo. Foi tão simples como configurar e executar o Nginx.
Você precisa ter o plugin instalado.
sudo apt-get install uwsgi-plugin-python3
Eu queria postar isso como um comentário, mas não tenho reputação suficiente.
Se você instalou seu uwsgi com pip ou make (ou fez uma compilação personalizada), seu plug-in python seria construído no binário e, portanto, não seria criado como uma biblioteca compartilhada (arquivo .so). Remover a linha <plugin>python</plugin>
deve resolver o problema neste caso, já que não é necessário, mas interrompe a configuração.
Uma solução para um problema semelhante foi explicado aqui .