Ubuntu如何搭建Django与Flup和Nginx环境?

运维 系统运维
本文介绍了Django与Flup和Nginx在ubuntu系统中发挥的作用,以及安装和配置这3者的方法。

Ubuntu系统越来越多的用户开始使用,本文介绍的是搭建Django+Flup+Nginx环境的过程。

首先我们必须明白这这3者在该环境下发挥的作用。

1.nginx:("enginex")是一个高性能的HTTP和反向代理服务器,作用和apache的类似。它可以处理一些静态文件的请求,而对于动态的文件的请求,它可以通过fastcgi方式,来分发请求给不同的动态语言处理。

2.flup:本身是一个使用python写的web服务器软件,它可以接受nginx发来的请求,执行相应的python代码,将结果返回给nginx。

3.django:基于python的一个web框架,它可以我们做一些基础性的东西,比如cookie,session管理,模板机制,权限管理等等。

在搭建环境之前,需要先安装好python环境,本文用的是python2.6.5,python的安装这里就不赘述。

1.安装相关支持文件

setuptools,通过setup.py安装python类库需要setuptools。

wgethttp://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg 
  • 1.

shsetuptools-0.6c11-py2.6.eggpcre,正则表达式相关的类库,ospenssh,安装nginx需要。

wgethttp://sourceforge.net/projects/pcre/files/pcre/8.02/pcre-8.02.tar.gz/download  
 
tarzxvfpcre-8.02.tar.gz  
 
cdpcre-8.02  
 
./configure  
 
make  
 
makeinstall  
 
cd.. 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

apt-getinstallopenssllibssl-develzlib,压缩相关的类库,很多软件都需要。

wgethttp://downloads.sourceforge.net/project/libpng/zlib/1.2.5/zlib-1.2.5.tar.gz?use_mirror=nchc 
 
tarzxvfzlib-1.2.5.tar.gz  
 
cdzlib-1.2.5  
 
./configure  
 
make  
 
makeinstall  
 
cd.. 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

2.安装django

wgethttp://www.djangoproject.com/download/1.2.1/tarball/  
 
tarzxvfDjango-1.2.1.tar.gz  
 
cdDjango-1.2.1  
 
pythonsetup.pyinstall 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

cd..如果需要使用mysql数据的话,可以参考《Linux下安装Django1.2和Mysql-Python》。

3.安装flup

wgethttp://www.saddi.com/software/flup/dist/flup-1.0.2.tar.gz  
 
tarzxvfflup-1.0.2.tar.gz  
 
cdflup-1.0.2  
 
pythonsetup.pyinstall  
 
cd.. 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

4.安装nginx

wgethttp://nginx.org/download/nginx-0.8.39.tar.gz  
 
tarzxvfnginx-0.8.39.tar.gz  
 
cdnginx-0.8.39  
 
./configure  
 
make 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

makeinstll注意:安装后会显示一段Configurationsummary信息,可以将它保存起来,【LINUX公社www.LinuxIDC.com】以便以后使用。

5.配置

配置flup和flup通过fastcgi方式通信,在运行python程序的server{..}配置节中的location{..}配置节添加以下配置:

fastcgi_passunix:/tmp/mysite.sock;  
 
fastcgi_paramPATH_INFO$fastcgi_script_name;  
 
fastcgi_paramREQUEST_METHOD$request_method;  
 
fastcgi_paramQUERY_STRING$query_string;  
 
fastcgi_paramCONTENT_TYPE$content_type;  
 
fastcgi_paramCONTENT_LENGTH$content_length;  
 
fastcgi_pass_headerAuthorization;  
 
fastcgi_intercept_errorsoff;  
 
fastcgi_paramSERVER_PROTOCOL$server_protocol;  
 
fastcgi_paramSERVER_PORT$server_port;  
 
fastcgi_paramSERVER_NAME$server_name;6.运行 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.

创建django项目

cd~  
 
django-admin.pystartprojectmysite以cgi方式运行django  
 
~/news/manage.pyrunfcgidaemonize=truesocket=/tmp/mysite.sock启动nginx  
 
/usr/local/nginx/sbin/nginx 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
Ubuntu如何搭建Django与Flup和Nginx环境?

享受django给你带来的乐趣吧!

总结:

希望本文介绍的Ubuntu下搭建Django+Flup+Nginx环境的方法能够对读者有所帮助,更多有关linux系统的知识还有待于读者去探索和学习。

【编辑推荐】

  1. 教你打包制作Ubuntu系统的背景图片
  2.  Ubuntu中删除消息菜单中不用的条目
  3. 如何为虚拟机里的Ubuntu10.10安装增强功能?
  4. 用Ubuntu破解Windows以及如何防御的三种方法
  5. Ubuntu10.10下如何对网站URL的DNS进行解析加速?
责任编辑:韩亚珊 来源: 之秀网
相关推荐

2011-08-16 15:41:47

UbuntuPython

2011-08-29 11:32:44

UbuntuiPhone

2011-09-01 19:06:57

UbuntuLua安装环境

2009-06-29 15:09:00

Java环境搭建Ubuntu

2011-08-30 10:37:27

UbuntuJAVA

2012-11-01 17:15:04

2015-07-23 14:19:51

SSDubuntu开发环境

2017-01-05 13:34:42

LinuxUbuntu邮件服务器

2011-08-29 15:23:11

Ubuntuapache

2010-10-19 09:35:08

Ubuntu 10.1云环境

2016-12-29 10:52:09

LinuxUbuntu邮件服务器

2017-01-09 08:59:17

Ubuntu邮件服务器

2011-06-29 10:06:27

Ubuntu 11.0Android

2015-10-26 10:14:13

Android开发环境robolectric

2017-04-19 22:30:26

LinuxNginxGunicorn

2009-12-16 09:47:24

Ubuntu9.04CUDA

2012-11-07 17:25:46

hadoopUbuntu 12.0

2010-01-08 09:43:40

Ubuntu ngin

2011-03-14 10:30:15

Ubuntu10.04LAMP

2011-09-07 13:11:01

Ubuntuxorg.conf
点赞
收藏

51CTO技术栈公众号