zoukankan      html  css  js  c++  java
  • nginx+uwsgi02---django部署(不推荐)

    1.文件结构

    myweb/

    ├── manage.py

    ├── myweb/

    │ ├── __init__.py

    │ ├── settings.py

    │ ├── urls.py

    │ └── wsgi.py

    └── myweb_uwsgi.ini

      在我们通过Django创建myweb项目时,在子目录myweb下已经帮我们生成的 wsgi.py文件。所以,我们只需要再创建myweb_uwsgi.ini配置文件即可,当然,uwsgi支持多种类型的配置文件,如xml,ini等。此处,使用ini类型的配置。

    2.uwsgi.ini

    # myweb_uwsgi.ini file
    [uwsgi]
    # Django-related settings
    socket = :8000
    
    # the base directory (full path)
    chdir = /home/fnngj/pydj/myweb
    
    # Django s wsgi file
    module = myweb.wsgi
    
    # process-related settings
    # master
    master = true
    
    # maximum number of worker processes
    processes = 4
    
    # ... with appropriate permissions - may be needed
    # chmod-socket = 664
    # clear environment on exit
    vacuum = true

      这个配置,其实就相当于在上一小节中通过wsgi命令,后面跟一堆参数的方式,给文件化了。

      socket 指定项目执行的端口号。

      chdir 指定项目的目录。

      module myweb.wsgi ,可以这么来理解,对于myweb_uwsgi.ini文件来说,与它的平级的有一个myweb目录,这个目录下有一个wsgi.py文件。

    3.nginx.conf

    ……
    server {
    listen 8099; 
    server_name 127.0.0.1 
    charset UTF-8;
    access_log /var/log/nginx/myweb_access.log;
    error_log /var/log/nginx/myweb_error.log;
    client_max_body_size 75M;
    
    location / { 
    include uwsgi_params;
    uwsgi_pass 127.0.0.1:8000;
    uwsgi_read_timeout 2;
    } 
    location /static {
    expires 30d;
    autoindex on; 
    add_header Cache-Control private;
    alias /home/fnngj/pydj/myweb/static/;
    }
    }
    ……

         listen 指定的是nginx代理uwsgi对外的端口号。

      server_name 网上大多资料都是设置的一个网址(例,www.example.com),我这里如果设置成网址无法访问,所以,指定的到了本机默认ip。

      在进行配置的时候,我有个问题一直想不通。nginx到底是如何uwsgi产生关联。现在看来大概最主要的就是这两行配置。

      include uwsgi_params;

      uwsgi_pass 127.0.0.1:8000;

      include 必须指定为uwsgi_params;而uwsgi_pass指的本机IP的端口与myweb_uwsgi.ini配置文件中的必须一直。

  • 相关阅读:
    hdu 4525(数学)
    hdu 4524(模拟)
    hdu 4523(大整数)
    hdu 4517(递推枚举统计)
    hdu 4520
    hdu 4519(数学题)
    hdu 4514(树的直径+并查集)
    hdu 4510(模拟)
    hdu 2089(数位DP)
    hdu 4506(数学,循环节+快速幂)
  • 原文地址:https://www.cnblogs.com/BlueFire-py/p/10841130.html
Copyright © 2011-2022 走看看