django下进行项目的部署
-------------------Django下进行对应的服务器配置
1、服务器购买
本人在阿里云购买了一个服务器,操作系统为windows server2008/Linux(ubuntu)
2、服务器环境配置
1、pip freeze > plist.txt :将当前虚拟环境中所安装的环境,移植到plist.txt文件夹中
2、sudo apt-get install python-virtualenv :Linux下下载对应的虚拟环境安装包
3、sudo easy_install virtualenvwrapper:Linux下下载对应的虚拟环境安装包
4、mkvirtualenv [虚拟环境名称]:创建虚拟环境
5、pip install -r plist.txt:安装pilist.txt虚拟环境中的配置
6、修改setting.py文件
1、DEBUG = False
2、ALLOW_HOSTS=['*',]表示可以访问服务器的ip
7、启动服务器查看访问信息是否正常
3、WSGI
1、在生产环境中,任何服务器进行部署,都需要遵循WSGI协议
4、uWSGI
1、pip install uwsgi:安装uwsgi
2、配置uWSGI,在项目中新建文件uwsgi.ini
[uwsgi]
socket=外网ip:端口(使用nginx连接时,使用socket)
http=外网ip:端口(直接做web服务器,使用http)
chdir=项目根目录
wsgi-file=项目中wsgi.py文件的目录,相对于项目根目录
processes=4
threads=2
master=True
pidfile=uwsgi.pid
daemonize=uswgi.log
3、启动:uwsgi --ini uwsgi.ini
4、停止:uwsgi --stop uwsgi.pid
5、重启:uwsgi --reload uwsgi.pid
5、nginx
1、sudo apt-get nginx:下载安装nginx
2、tar zxvf nginx-1.6.3.tar.gz:对nginx进行安装包的解压操作
3、进入nginx-1.6.3目录依次执行如下命令进行安装:
1、./configure
2、make
3、sudo make install
4、默认安装到/usr/local/nginx目录,进入此目录执行命令
1、查看版本:sudo sbin/nginx -v
2、启动:sudo sbin/nginx
3、停止:sudo sbin/nginx -s stop
4、重启:sudo sbin/nginx -s reload
5、通过浏览器查看nginx运行结果
6、指向uwsgi项目:编辑conf/nginx.conf文件
1、sudo conf/nginx.conf
2、在server下添加新的location项,指向uwsgi的ip与端口
location / {
include uwsgi_params;将所有的参数转到uwsgi下
uwsgi_pass uwsgi的ip与端口;
}
6、静态文件
1、配置nginx的静态项
1、所有的静态文件都会由nginx处理,不会将请求转到uwsgi
2、配置nginx的静态项,打开conf/nginx.conf文件,找到server,添加新location
location /static {
alias /var/www/test5/static/;
}
2、在服务器上创建目录结构“/var/www/test5/”
3、sudo chmod 777 /var/www/test5:修改对应的目录权限
4、mkdir static:创建static目录,注意顺序是先分配权限,再创建目录
5、配置settings.py文件
1、STATIC_ROOT='/var/www/test5/static/'
2、STATIC_URL='/static/'
6、收集所有静态文件到static_root指定目录:python manage.py collectstatic
7、重启nginx、uwsgi
django下进行项目的部署的更多相关文章
- Ubuntu下Qt项目的部署
部署涉及到以下内容: 1. 程序执行文件: 2. 动态链接库: 3. Qt的一些插件(plugins),例如图片插件(imageformats),数据库插件(sqldrivers): 4. 其他资源文 ...
- 第一个Django项目及部署到Sina App Engine
Sina App Engine简称SAE,是个比较好的网站托管平台,目前说是全面免费,其实就是每个人分配很小的资源配额,在一定的使用范围内不用消耗云豆(SAE计费方式),对于个人学习和研究足够了,同类 ...
- vue+django前后端项目部署
一.python3的安装 1.安装python前的库环境: yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel ...
- 玩转Django2.0---Django笔记建站基础十二(Django项目上线部署)
第十二章 Django项目上线部署 目前部署Django项目有两种主流方案:Nginx+uWsGI+Django或者Apache+uWSGI+Django.Nginx作为服务器最前端,负责接收浏览器的 ...
- 分布式版本库——Windows下Git的环境部署以及在GitHub上开源自己的项目
分布式版本库--Windows下Git的环境部署以及在GitHub上开源自己的项目 这几天着实忙的焦头烂额,可惜不是搞技术,今天周日,难得闲下来,写篇大家都想学习的Git教程,其实廖雪峰老师的网站已经 ...
- linux下配置python环境 django创建helloworld项目
linux下配置python环境 1.linux下安装python3 a. 准备编译环境(环境如果不对的话,可能遇到各种问题,比如wget无法下载https链接的文件) yum groupinstal ...
- Eclipse中的Web项目自动部署到Tomcat的webapp目录下
Eclipse中的Web项目自动部署到Tomcat 原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的很快,但记忆总是很模糊,偶尔犯错,以前很少写 ...
- linux下tomcat的配置及项目的部署流程
Java的安装配置 1. 在/etc/profile文件中配置相应的信息(如下) export JAVA_HOME=/usr/java/jdk1.6.0_20 export JRE_HOME=/usr ...
- 我在使用eclipse配置Tomcat服务器的时候发现,默认情况下Tocmat把我们部署的项目放在了workspaces下面,而不是像Myeclipse默认的那样放在tomcat的安装路径下。
1.我在使用eclipse配置Tomcat服务器的时候发现,默认情况下Tocmat把我们部署的项目放在了workspaces下面,而不是像Myeclipse默认的那样放在tomcat的安装路径下. 2 ...
随机推荐
- HDU1039 Easier Done Than Said?
Problem Description Password security is a tricky thing. Users prefer simple passwords that are ea ...
- HDU1034 Candy Sharing Game
Problem Description A number of students sit in a circle facing their teacher in the center. Each st ...
- AD7928
实验室板子soc-de1自带的7928芯片,下面记录一下它的参数 吞吐速率 : 1MSPS 吞吐速率 : 是指ADC器件单位时间内能处理的任务数或输出结果的数量.单位:SPS(Samples per ...
- sybase数据库和oracle数据库中字段中含有换行符的解决办法
最近在做数据库从sybase到oracle的迁移工作,sybase数据库表bcp导出后,通过sqlldr导入到oracle数据库,然后oracle数据库通过spool按照sybase数据库bcp的格式 ...
- 如何使用命令行cmd执行java程序
如果你的电脑上没有像idea eclipse这类的IDE,但是因为工作需要必须要执行java代码怎么办呢? 这个时候就需要使用电脑最原始的执行方式 既命令行 1:首先你得安装了jdk与jre (这里就 ...
- [补档][Tyvj 1728]普通平衡树
[Tyvj 1728]普通平衡树 题目 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 1. 插入x数 2. 删除x数(若有多个相同的数,因只删除一个) 3. 查询x数的 ...
- Ubuntu超好用软件:剪贴板
这个软件的作用就是保存你复制或者剪贴的内容 对于经常复制文字的Ubuntu使用者作用还是比较大的 下面附上安装代码 安装: sudo add-apt-repository ppa:shantzu/cl ...
- mybatis中的mapper接口文件以及example类的实例函数以及详解
##Example example = new ##Example(); example.setOrderByClause("字段名 ASC"); //升序排列,desc为降序排列 ...
- 快捷使用Node Inspector调试NodeJS
一:介绍 NodeJS开发有很多种调试方式,比如输出Log.WebStorm自带的调试器.Node Inspector等,其中Node Inspector是比较流行和被推荐的一种. 但是Node In ...
- akoj-1055-矩阵乘法
矩阵乘法 Time Limit:1000MS Memory Limit:65536K Total Submit:19 Accepted:7 Description 矩阵乘法是线性代数中最基本的运算之 ...