服务器之家

服务器之家 > 正文

Django在Ubuntu14.04的部署方法

时间:2022-01-25 17:10     来源/作者:Ubuntu教程网

第一步。

sudo apt-get update

sudo apt-get upgrade

先更新。。

Django的主流部署方式:nginx+uwsgi+django

第二步,安装nginx

sudo apt-get install nginx

安装nginx,如果需要安装最新的nginx需从官网下载源码包进行手动编译。

nginx的大致文件结构。

1.配置文件:/etc/nginx

2.程序:/usr/sbin/nginx

3.日志:/var/log/nginx/access.log - error.log

第三步,安装uwsgi

sudo apt-get install python3-dev

sudo apt-get install python3-pip

sudo pip3 install uwsgi(此步之前,可以换下pip源以提高下载速度。在~/.pip下创建pip.conf写入

[global]

trusted-host = pypi.douban.com

index-url = http://pypi.douban.com/simple)

uwsgi是一个web服务器,它实现了WSGI协议、uwsgi、http等协议。Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换。

大致流程是 : 客户端<==>nginx<==>uwsgi<==>Django。静态请求由Nginx自己处理。非静态请求通过uwsgi传递给Django,由Django来进行处理,从而完成一次WEB请求。

创建Django测试项目,django-admin startproject mysite,cd mysite,python manage.py startapp demo1。

第四步,测试uwsgi

在mysite目录下新建测试文件,nano test.py.

写入:

?
1
2
3
def application(env, start_response):
  start_response('200 OK', [('Content-Type','text/html')])
  return ["Hello World"]

运行:

?
1
uwsgi --http :8001 --plugin python --wsgi-file test.py

访问正常。

第五步,测试Django

?
1
python manage.py runserver 0.0.0.0:8002

访问正常。

连接Django和uwsgi。

?
1
uwsgi --http:8001 --plugin python --module mysite.wsgi

访问正常。

第六步,配置uwsgi

uwsgi支持通过多种配置文件形式启动,这里采用ini配置文件的方法.

新建uwsgi:nano uwsgi.ini

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# mysite_uwsgi.ini file
  [uwsgi]
 
  socket = 127.0.0.1:3400
  # Django-related settings
  # the django project directory (full path)
  chdir      = /home/ubuntu/mysite
  # Django's wsgi file
  module     = mysite.wsgi
 
  # process-related settings
  # master
  master     = true
  # maximum number of worker processes
  processes    = 2
 
  threads = 2
  max-requests = 6000
 
  # ... with appropriate permissions - may be needed
  chmod-socket  = 664
  # clear environment on exit
  vacuum     = true

访问时报错,invalid request block size: 21573 (max 4096)...skip。

原因是url地址超过4096个字符,原因是我们是用socket的方式启动,将配置文件的socket改为http即可,或者修改buffer-size。

(建议不做修改,测试时改为http即可,等连接nginx时,改回到socket)

?
1
daemonize = /home/ubuntu/mysite/uwsgi.log

正式运行时将这句代码加入到uwsgi.ini文件中,访问日志就会后台输出到uwsgi.log

此时django已经能访问。

第七步,配置nginx

修改nginx的默认配置文件/etc/nginx/sites-enabled/default

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
server {
  # the port your site will be served on
  listen   80;
  # the domain name it will serve for
  server_name 127.0.0.1; # substitute your machine's IP address or FQDN
  charset   utf-8;
 
  # max upload size
  client_max_body_size 75M;  # adjust to taste
 
  # Django media
  location /media {
    alias /home/ubuntu/mysite/media; # your Django project's media files - amend as required
  }
 
  location /static {
    alias /home/ubuntu/mysite/static; # your Django project's static files - amend as required
  }
 
  # Finally, send all non-media requests to the Django server.
  location / {
    include   uwsgi_params; # the uwsgi_params file you installed
    uwsgi_pass 127.0.0.1:8001;#此处跟uwsgi配置文件保持一致
  }
}

记得修改测试时的uwsgi.ini的配置。

第八步,运行

重启nginx,运行uwsgi.

大功告成

以上这篇Django在Ubuntu14.04的部署方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

标签:

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国 2021-05-08
返回顶部

1089
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40