参考:

         

安装nginx(版本1.0.2): 

      1、安装依赖包:

      sudo apt-cache search pcre (apt的模糊匹配软件包的命令)

      sudo apt-get install libssl-dev gcc libpcre3-dev zlib1g-dev libperl-dev g++  

      2、将下载nginx的源码包:wget http://nginx.org/download/nginx-1.0.2.tar.gz

           解压 然后进入目录下: ./configure --prefix=/usr/local/nginx/

           默认nginx安装的目录在/usr/local/nginx下,包括:

         /usr/local/nginx/sbin #控制nginx启动文件

 /usr/local/nginx/conf #配置文件

 /usr/local/nginx/html #默认网页文件

 /usr/local/nginx/logs #日志文件

      3、安装完成后,可以试用一下:

         /usr/local/sbin/nginx    (启动)

    /usr/local/sbin/nginx -s stop (停止)

     (也可以杀死nginx的进程id : kill `cat /usr/local/nginx/logs/nginx.pid`)

       /usr/local/sbin/nginx -s reload (重启)

     4、我在/etc/init.d/ 目录下,新建了一个nginx脚本,可以利用 /etc/init.d/nginx (start|stop|restart) 来启动和关闭。

     5、接下来就可以设置nginx的开机自启动了:

         update-rc.d nginx defaults

         chkconfig --level 2345 nginx on

 

     6、关于nginx的配置文件暂时先默认不改,待安装完uwsgi后需要作变动。

安装django和flup:

    wget http://www.saddi.com/software/flup/dist/flup-1.0.2.tar.gz

    view sourceprint?

    wget http://media.djangoproject.com/releases/1.2/Django-1.2.5.tar.gz

    flup和django   都是用 python setup.py install

    关于flup:WSGI 还只是一种规范,一种标准,它要完成的作用是用来定义 Python 应用程序要如何于 apache/lighttpd/nginx 等之类的 WEB 服务器之间如何进行通信和交换信息,它不是实际 可以直接拿来用的东西。而 flup 就是使用 Python 语言对 WSGI 的一种实现,是可以用 于 Python 的应用开发中的一种工具或者说是一种库。

    更多详细介绍:

 

安装 uwsgi (版本 0.9.6.2):

    1、add-apt-repository ppa:stevecrozz/ppa  

       apt-get update  

       apt-get install uwsgi 

    2、安装完以后可以直接使用uwsgi命令。         

 

配置nginx和uwsgi:

    1、首先确认在/usr/local/nginx/conf/ 目录下是否存在 uwsgi_params文件,如果没有,建议安装更高版本的nginx

    2、备份/usr/local/nginx/conf/nginx.conf文件。并修改该文件:

   user  root root;

   worker_processes  1;

   events {

      worker_connections  1024;}

   http {

          include       mime.types;

          default_type  application/octet-stream;

          sendfile        on;

          keepalive_timeout  65;

     server {

           listen       80;

         server_name  localhost;

           location / {

           include uwsgi_params;

           uwsgi_pass 127.0.0.1:9090;

          }

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

                 root   html;

          }

     }

   }

    3、建立项目: 

    cd /root

    django-admin.py startproject mypro

    4、在/root/my_django/目录下 :vim uwsgi.xml

    <uwsgi> 

      <socket>0.0.0.0:9090</socket> 

      <listen>20</listen> 

      <master>true</master> 

      <pidfile>/usr/local/nginx/uwsgi.pid</pidfile> 

      <processes>8</processes> 

     <daemonize>/var/log/uwsgi.log</daemonize>

      <wsgi-file>wsgi.py</wsgi-file>  #这个文件当前目录下建立

      <pythonpath>/root/mypro</pythonpath>   #刚才建立项目的路径

      <profiler>true</profiler> 

      <memory-report>true</memory-report> 

      <enable-threads>true</enable-threads> 

      <logdate>true</logdate> 

      <limit-as>6048</limit-as> 

    </uwsgi>

    5、在/root/my_django/目录下 :vim wsgi.py

      import django.core.handlers.wsgi

      import os

      import sys

      sys.path.append(os.path.dirname(__file__))

      os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'

      adminmedia= os.path.join(os.path.dirname(__file__),'admin_media')

      application = django.core.handlers.wsgi.WSGIHandler()

    6、启动nginx : /etc/init.d/nginx start

       后台启动 uwsgi -x /root/my_django/uwsgi.xml&

    7、测试:直接在浏览器中输入服务器的ip地址。

 完毕!

符:xml文件加日志的文档:

<uwsgi>

  <socket>0.0.0.0:9090</socket>

  <listen>20</listen>

  <master>true</master>

  <pidfile>/usr/local/nginx/uwsgi.pid</pidfile>

  <processes>8</processes>

  <wsgi-file>wsgi.py</wsgi-file>

  <daemonize>/var/log/uwsgi.log</daemonize>  //如果不加这条,程序将在前台运行,而且只要关闭前台终端,程序就终止。

  <pythonpath>/root/mypro/</pythonpath>

  <profiler>true</profiler>

  <memory-report>true</memory-report>

  <enable-threads>true</enable-threads>

  <logdate>true</logdate>

  <limit-as>6048</limit-as>

</uwsgi>