Articles of uwsgi

WSGI <app>和<module>有什么区别?

我按照这些说明通过uWSGI服务Python(Web2Py) 。 但是,Web服务器返回了一个错误: uWSGI错误 找不到Python应用程序 直到我修改config.xmlconfiguration文件: <uwsgi> <pythonpath>/var/web2py/</pythonpath> <app mountpoint="/"> <script>wsgihandler</script> </app> </uwsgi> 至: <uwsgi> <pythonpath>/var/web2py/</pythonpath> <module>wsgihandler</module> </uwsgi> <app>和<module>有什么区别? 为什么<module>工作,但不是<app>?

如何从nginx和uwsgi上的一个Django项目运行多个网站

如何从单个Django代码库运行两个网站或一个站点的子域。 项目中的每个Django应用程序都可以在不同的域上为网站提供动力,但是所有的应用程序仍然可以共享单个pipe理界面的单个数据库。 我使用uWSGI-Nginx-Django进行部署 谢谢。

nginx失败(13:权限被拒绝)uwsgi(502坏的网关)

我无法在新的DigitalOcean液滴上运行我的应用程序。 机器运行CentOS 6.5 我的/etc/nginx/nginx.conf user nginx www-data; worker_processes 1; error_log /var/log/nginx/error.log; #error_log /var/log/nginx/error.log notice; #error_log /var/log/nginx/error.log info; pid /var/run/nginx.pid; (continues) 我的myapp_nginx.conf server { server_name 104.xxx.x.xxx; listen 8080; charset utf-8; client_max_body_size 30M; location / { index index.html index.htm; root /home/webdev/mydevelopment/git/ers_portal; try_files $uri @app; } location /static { alias /home/webdev/mydevelopment/git/ers_portal/app/static; } location @app { include uwsgi_params; uwsgi_pass […]

如果logrotate的行为有*,并且在一个path中有一个明确的文件名在日志中旋转?

这个问题有点长! 让我来解释下面的例子。 一世 在/etc/logrotate.d/有一个日志轮转configuration文件,用于uwsgi: "/var/log/uwsgi/*.log" "/var/log/uwsgi/*/*.log" { copytruncate daily rotate 5 compress delaycompress missingok notifempty } 比方说,我有大约12个uwsgi模块,我想保留一个uwsgi应用程序日志文件比其他更多,所以我有一个如下configuration: /var/log/uwsgi/app/MY_APP.log { daily missingok rotate 60 compress delaycompress notifempty create 0640 www-data adm } 现在的问题是,我应该如何创build日志旋转,如上所述,并保留*为其他11个模块。 我不想创build11日志旋转相同的configuration,我应该怎么做只覆盖一个模块?

无法从uwsgi加载configuration

由于昨天我一直在摔跤这个问题:无法从uwsgi加载configuration 当我谷歌,没有出现。 我想用一个非常简单的uwsgi.ini文件在nginx下运行UWSGI。 该文件被正确指向。 任何人都可以请解释这个错误是什么,以及如何可以诊断和修复它。 如果有更多的信息,我可以发布帮助,然后请只问。 问候, 詹姆士

为什么新贵不启动uWSGI?

我试图在我的VPS上build立一个django项目。 我试图让一个天王皇帝跑,从而产生封臣。 我已经build立了所有我的configuration文件build议由许多网站,包括uWSGI文档。 然而,当我运行文件命令 paul @例子:/ $ sudo service uwsgi start 我得到以下内容: 开始:未知作业:uwsgi 我想这是因为Upstart无法识别/ etc / init /中的uwsgi.conf文件http://uwsgi-docs.readthedocs.org/en/latest/Upstart.html 。 但经过审查,我找不到任何问题。 paul @例子:/ etc / init $ sudo vim uwsgi.conf #皇帝uWSGI脚本 预启动脚本 记者“uWSGI皇帝预启动” 结束脚本 后启动脚本 记者“uWSGI皇帝后启动” 结束脚本 描述“uWSGI Emperor” 在运行级别开始[2345] 在运行级别停止[!2345] 重生 env LOGTO = /var/log/uwsgi.log exec / usr / local / bin / uwsgi –master […]

分析uwsgi strace日志以找出为什么需要高CPU使用率

我正在通过uwsgi与nginx运行django网站。 问题是当stream量变大时,uwsgi进程需要很多的CPU时间。 相同的configuration在testing服务器上正常工作,siege / ab模拟大量的并发stream量。 这里是uwsgi进程的一个strace日志。 http://dl.dropbox.com/u/43017476/strace.log 还有一些sysctl: fs.file-max = 128000 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_rmem = 4096 87380 16777216 net.ipv4.tcp_wmem = 4096 65536 16777216 net.core.netdev_max_backlog = 4096 net.ipv4.tcp_max_syn_backlog = 4096 net.core.somaxconn = 250000 net.ipv4.tcp_keepalive_time = 300 nginx conf与Google的其他教程非常相似。 我一直在试图弄清楚,但没有运气。 不过,我发现了很多这样的东西: 22:12:02.932276 read(8, "\7\0\0\2\0\0\0\2\0\0\0", 16384) = 11 22:12:02.932504 poll([{fd=8, events=POLLIN|POLLPRI}], 1, 0) = […]

Nginx,uWSGI,Python,用户,组和权限。 关于安全的问题

好的,昨天我终于得到了在我的电脑上运行的nginx和uWSGI服务器。 Nginx和uWSGIconfiguration文件,新用户,组和他们的权限,以及基于Web上可用知识configuration的SSH的chrootdir。 不幸的是,我不太相信它,所以我想问问系统pipe理员,如果我没有在某个地方犯过一个很大的错误,那么总有一天我会告别服务器。 对于HTTP服务器,我只使用/ srv目录,其结构和权限如下: drwxr-xr-x 2 root root 4096 2012-02-03 04:16 nginx -rw-r–r– 1 root root 411 2012-02-03 04:25 Site1.conf -rw-r–r– 1 root root 170 2012-02-02 23:59 Site2.conf drwxrwxr-x 2 root www 4096 2012-02-03 04:25 sockets srw-rw—- 1 Site1-www www 0 2012-02-03 04:25 Site1.socket drwxr-xr-x 2 root root 4096 2012-02-03 04:09 uwsgi -rw-r–r– 1 […]

重新启动一个uWSGI应用程序(当它在皇帝模式)

我在emperor模式下运行uWSGI,根据各自的configuration托pipe一大堆Django站点。 当它检测到configuration文件中的变化时,这些应该会更新,这在很大程度上工作,当我只是touch uwsgi.ini相关的文件。 但是偶尔我会在Django网站上弄到一些东西,服务器将无法加载。 是的,是的,我应该更好地testing,但这不是重点。 发生这种情况时,uWSGI似乎将该网站标记为已停止,并停止尝试运行(似乎是有道理的)。 即使在我解决了潜在的问题后,没有任何touch会使该网站的uWSGI进程启动并运行。 我必须重新加载整个uWSGI服务器(几十秒钟内敲几十个网站)。 有没有办法迫使uWSGI重新加载其网站之一?

uwsgi通过主pipe太多的打开的文件

我有一个uWSGI设置通过监督员在Ubuntu 12.04框,最近我注意到,当试图尾日志(所有日志在该用户帐户)时,我得到的消息, too many files opened了too many files opened ,uWSGI运行作为非root用户,我改变了这个用户的软硬限制,并重新启动了机器,并解决了这个问题。 这个盒子里只有uwsgi正在运行,我的代码部署过程停止了supervisor,它向uwsgi进程发送INT信号,然后在执行一些操作之后启动它。 我想符合发送INT是否使uWSGIclosures随着时间的推移打开的文件? 如果不是什么更好的方法来阻止uWSGI,以便它照顾其打开的文件? uWSGI文档uWSGI文档说,SIGHUP将重新加载服务器,并将closures它打开的文件,但我的要求是停止并启动uwsgi。 supervisor-uwsgi部分 [program:uwsgi] command=uwsgi –ini abcd.ini –gevent 200 autostart=False stderr_logfile=/mnt/log/uwsgi.err.log stdout_logfile=/mnt/log/uwsgi.log stopsignal=INT 请任何想法?