博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux安装Django 以及 生产环境部署实现高并发
阅读量:7060 次
发布时间:2019-06-28

本文共 2960 字,大约阅读时间需要 9 分钟。

1.首先安装python

Python编译安装

主要介绍linux环境下安装

cd  /usr/local/src     //进入安装目录

wget  https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz

xz  -d    Python-3.6.2.tar.xz   && tar  xvf  Python-3.6.2.tar  //解压缩

cd  Python-3.6.2  //进入解压目录

./configure  --prefix=/usr/local/python

make && make install

/usr/local/python/bin/python3.6  --version   //查看当前python版本

ln -s  /usr/local/python/bin/python3.6   /usr/bin/python3.6   //做软链接

ln -s  /usr/local/python/bin/pip3   /usr/bin/pip3

2.安装Django

pip3 install  Django

cd  /usr/local/python/bin   //进入文件夹

ln -s /usr/local/python/bin/django-admin    /usr/bin/django-admin   //创建django-admin 工程的软链接

cd /home   //进入任意一个目录

django-admin   startproject  mysite   //创建工程

进入mysite工程下同名目录mysqite  修改settings  如果用的是mysql  pip3 install pymysql

需要:

yum -y install mysql-devel

pip3 install mysqlclient

3.启动Django

在settings中找到ALLOWED_HOSTS=[],加入主机名或者域名

python3.6  manager.py  runserver  ip:port  

 

安装uwsgi

pip3  install uwsgi

基本测试:

vim  /home/test.py 

# test.pydef application(env, start_response):    start_response('200 OK', [('Content-Type','text/html')])    return [b"Hello World"] # python3    #return ["Hello World"] # python2

 

运行:

/usr/local/python/bin/uwsgi --http :8000 --wsgi-file  /home/test.py

 

用uwsgi 启动django

cd mysite  #进入django项目主目录下/usr/local/python/bin/uwsgi  --http :8900  --module  mysite.wsgi

 

也可以把参数写到配置文件里

vim  /home/EasyBlog.ini

[uwsgi]http = :9900   #the local unix socket file than commnuincate to Nginxsocket = 127.0.0.1:9901     #socket nginx监听端口# the base directory (full path)chdir = /home/EasyBlog# Django's wsgi filewsgi-file = EasyBlog/wsgi.py# maximum number of worker processesprocesses = 4#thread numbers startched in each worker processthreads = 2#monitor uwsgi statusstats = 127.0.0.1:9191# clear environment on exitvacuum          = true

 

启动

/usr/local/python/bin/uwsgi   /home/EasyBlog.ini

 

安装nginx配合nginx使用

vim  /data/nginx/conf/uwsgi.conf

upstream django {    server 127.0.0.1:9901; #端口为监听uwsgi的socket端口}server {    listen      80;    server_name blog.fuzegame.com;    charset     utf-8;    client_max_body_size 75M;   # adjust to taste    location /media  {        alias /path/to/your/mysite/media;  # your Django project's media files - amend as required    }    location /static {        alias /home/EasyBlog/static; # your Django project's static files - amend as required  配置静态文件路径    }    location / {        uwsgi_pass  django;        include     /home/EasyBlog/uwsgi_params; # the uwsgi_params file you installed    }}

 

重要:把 nginx conf配置文件夹下的 uwsgi_params  拷贝到 django 目录下

 cp  /usr/local/nginx/conf/uwsgi_params     /home/EasyBlog

 在生产环境中,应该把django settings中的Debug= False

这样配置完成后 访问admin页面时看不到静态文件,可以这样操作

在 django settings   添加一行   

STATIC_ROOT = 'all_static_files'

 然后执行:

python3 manage.py collectstatic

 执行完成后会在django工程目录下 自动创建一个 all_static_files  目录

最后还需要在nginx 中的django配置文件中 修改

location /static {        alias /data/mysite/all_static_files; # 修改成all_static_files    }

 

重启nginx

 

此时启动Nginx 和Uwsgi,你的django项目就可以实现高并发啦!

 

转载于:https://www.cnblogs.com/sunhao96/p/9044218.html

你可能感兴趣的文章
PowerPC-MPC56xx Flash模式代码启动过程
查看>>
Oracle LPAD/RPAD函数在处理中文时的注意事项
查看>>
物理分页与逻辑分页
查看>>
【每天一道算法题】字符串查找
查看>>
多视图工作
查看>>
MySQL Notifier 缺少根元素解决方法
查看>>
CSS :focus 选择器
查看>>
判断是否是IE;自定义onkeyup事件
查看>>
JFinal 3.3 入门学习 -- Hello JFinal World.
查看>>
http链接
查看>>
ActiveMQ学习(三)——MQ的通讯模式
查看>>
Apache 目录列表
查看>>
迎接仪式 dp
查看>>
[TJOI2013]循环格 费用流 BZOJ3171
查看>>
Jmeter之Bean shell使用(二)
查看>>
安装Oracle客户端时,检查系统要求时状态为错误的解决办法
查看>>
oracle从入门到精通复习笔记续集之PL/SQL(轻量版)
查看>>
Android百分比布局
查看>>
Android四种Activ“.NET研究”ity的加载模式
查看>>
3G安全提上日程 电信运营商紧寻手机杀毒软件
查看>>