nginx uwsgi django+uwsgi布署为什么找不到应用

技术博客_个人网站
当前位置:>>>>阅读正文centos6中简单配置nginx+uWSGI+python3+bottle环境新手教程这两天在学习python的web开发,一开始是选择的是django,好不容易入门了,发现其与mysql.connector不兼容。裤子都脱了居然闹这样。。。于是改用Bottle框架,这个框架对python3.3支持比较好一些。现在就简单记录一下我在centos6.4上的环境搭建之路,准备脱。(教程中所有的~$只是代表linux命令输入的开始)1.第一步:安装nginx。 我这人比较懒,所以nginx安装我选择的是使用lnmp一键安装包。(百度搜索lnmp第一个就是) 这样,nginx、mysql、php也都有了。安装照着它的教程来就是了。安装好后 访问你的服务器地址如http://localhost/ 或http://你的服务器ip/ 显示一个带有大大的nginx图片的页面就说明安装正常。2.第二步:编译安装python3.3。由于我的centos6.4默认安装的是python2.6,所以我要安装个3.3。1) 下载python3.3~$ wget http://www.python.org/ftp/python/3.3.0/Python-3.3.0.tgz2) 解压、进入目录、创建安装目录~$ tar -zxvf Python-3.3.0.tgz~$ cd Python-3.3.0~$ mkdir /usr/local/python333) 编译、安装。(–prefix 指定安装到的位置;如果是centos5或其它版本,有可能在安装完后python中import zlib时会提示no module named zlib,需要在这条语句后面追加参数 –with-zlib)~$ ./configure –prefix=/usr/local/python33~$ make && make install4) 设置,因为安装完后 系统默认执行python命令时还是启动的2.6,我们需要把默认的2.6从bin目录中转移走,换成我们的python3.3。~$ mv /usr/bin/python /usr/bin/python26~$ ln -s /usr/local/python33/bin/python3.3 /usr/bin/python以上两句 第一句 将原系统中的python重命令为python26,第二句创建软连接(快捷方式)指向到我们新安装的python3.3。这样在系统命令行中两个版本python都可以用。运行python将启动python3.3,运行python26将启动python2.6。3.第三步,编译安装uWSGI。1) 下载uwsgi~$ wget http://projects.unbit.it/downloads/uwsgi-latest.tar.gz2) 解压、进入目录~$ tar zxvf uwsgi-latest.tar.gz~$ cd uwsgi-2.03) 编译安装~$ yum install python-devel~$ make4) 配置、修改权限~$ cp uwsgi /usr/bin/~$ chmod a+x /usr/bin/uwsgi~$ groupadd -g 51 uwsgi~$ useradd -g 51 uwsgi4.第四步,配置nginx~$ vi /usr/local/nginx/conf/nginx.conf在server中加入一段location / {include uwsgi_uwsgi_pass 127.0.0.1:8080;}像这样:5.第五步,重启你的nignx: ~$ service nginx restart重新访问你的服务器地址如http://localhost/ 或http://服务器ip/ 如果显示一个大大的502,说明应该正常。。6.第六步,安装Bottle框架。安装这个bottle很简单,去它官网下载这个bottle.py文件,直接放到你的网站目录就行了,我们现在下载后放到default中。测试期间 使用lnmp默认的网站目录就行。默认网站目录在/home/wwwroot/default/中。我比较喜欢定位到default后再支持wget下载。~$ cd /home/wwwroot/defaultdefault$ wget /defnull/bottle/raw/master/bottle.py7.第七步,现在可以编写你的python项目程序了。记得也放到这个default目录中(只是测试时)。比如你写了一个hello world程序如下:from bottle import route, default_app@route('/')def hello():return 'hello world!'application = default_app()我们把这个文件命名为hello.py吧。。(注意它是/home/wwwroot/default/hello.py)8.第八步,运行uWSGI。(注意现在我们当前目录还定位在default中)$ uwsgi -s 127.0.0.1:8080 -w hello回车后检查回显的信息中没有报错信息(你的hello.py中如果有语法错误等也将会显示在这些信息中,一般它的报错在倒数第四行以上),且最后一行提示spawned uwsgi worker 1 …. 说明你的uwsgi已经成功启动!现在依旧打开你的http://localhost/ 或http://服务器ip/ 看看是不是输出hello world了? 恭喜,第一个bottle app已经完成~~~!!!上面启动uwsgi的方式不能关闭命令框,关闭的话uwsgi也将停止,访问页面时还是502。 要想把uwsgi放到后台,追加参数 –daemonize /var/log/uwsgi.log 这样,运行完命令后,不会显示那一片信息,像是什么都没做。 所有的回显信息都以日志的信息保存在uwsgi.log文件中。linux的整个过程中,如果你想知道某个文件xxx的路径,可以用查找命令 find / -name xxx 。happy!【上一篇】【下一篇】
Copyright &
All rights reserved. Powered by
51次查询,耗时0.412秒.&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!nginx+uwsgi布署为什么找不到应用_百度知道
nginx+uwsgi布署为什么找不到应用
我有更好的答案
能是程序方面的问题, 能看一下my网名吗, 都能帮助解决的哦, 还有可能是配置文件方面的问题哦这些都不是问题
其他类似问题
为您推荐:
nginx的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁nginx+uwsgi布署为什么找不到应用_百度知道
nginx+uwsgi布署为什么找不到应用
提问者采纳
wsgi配置错了.0.0;var/www/www&#47.1;var&#47,请参考这个例子 uwsgi -s 127:9000 --processes 2 --enable-threads —-pythonpath / --wsgi-file &#47
为您推荐:
nginx的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 nginx uwsgi 502 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信