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 ...
随机推荐
- 使用maven搭建环境
今天第一次用maven创建springmvc工程,下载配置都很成功,但用命令行创建项目时遇到一些问题: 1.命令行显示命令不为内部或外部命令: 解决方法:使用管理员模式打开命令行 2. 显示到如下图所 ...
- 基于Vue2 搭建移动端 webapp 框架
Vue.js2.0作为国内热门并广为人知的前端框架,其与其他主流框架的优势在此不做过多赘述.搭建框架步骤如下: 转自:http://www.jianshu.com/p/beae26e57b0f 安装N ...
- 基于Python使用SVM识别简单的字符验证码的完整代码开源分享
关键字:Python,SVM,字符验证码,机器学习,验证码识别 1 概述 基于Python使用SVM识别简单的验证字符串的完整代码开源分享. 因为目前有了更厉害的新技术来解决这类问题了,但是本文作 ...
- vue.js移动端app实战2:首页
貌似有部分人要求写的更详细,这里多写一点vuel-cli基础的配置 什么是vue-cli? 官方的解释是:A simple CLI for scaffolding Vue.js projects, 简 ...
- Dapper入门教程(一)——Dapper介绍
Dapper是什么? Dpper是一款.Net平台简单(Simple)的对象映射库,并且Dapper拥有着"微型ORM之王"的称号.就速度而言与手写ADO.NET SqlDateR ...
- 结合bootstrap fileinput插件和Bootstrap-table表格插件,实现文件上传、预览、提交的导入Excel数据操作流程
1.bootstrap-fileinpu的简单介绍 在前面的随笔,我介绍了Bootstrap-table表格插件的具体项目应用过程,本篇随笔介绍另外一个Bootstrap FieInput插件的使用, ...
- ChromeDriver,IEDriver,Firefox配置
ChromeDriver: 下载ChromeDriver.exe,放入某个文件夹,如C:\Program Files (x86)\Google\Chrome\Application,把此路径加入pat ...
- python基础===使用switch方法,减少使用if语句
def jia(x,y): return x+y def jian(x,y): return x-y def cheng(x,y): return x*y def chu(x,y): return x ...
- python基础===八大排序算法的 Python 实现
本文用Python实现了插入排序.希尔排序.冒泡排序.快速排序.直接选择排序.堆排序.归并排序.基数排序. 1.插入排序 描述 插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一 ...
- 重定向URL
重定向的原因有哪些?[1]网址变更了[2]权限不够 [1]网址变更了 [举例]以google为例,之前我们可以访问www.google.cn,但是后来Z.F不让我们访问它了,那么google公司为了避 ...