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 ...
随机推荐
- C语言指针2(空指针,野指针)
//最近,有朋友开玩笑问 int *p *是指针还是p是指针还是*p是指针,当然了,知道的都知道p是指针 //野指针----->>>指没有指向一个地址的指针(指针指向地址请参考上一 ...
- React 实践项目 (五)
React在Github上已经有接近70000的 star 数了,是目前最热门的前端框架.而我学习React也有一段时间了,现在就开始用 React+Redux 进行实战! React 实践项目 (一 ...
- Android Studio中添加SlidingMenu
SlidingMenu是github上面的一个开源库,地址:https://github.com/jfeinstein10/SlidingMenu.git 第一步:先下载: 第二步:添加到as中: 1 ...
- python 排序sorted
num = [3,2,4,6,5] anum = sorted(num) dnum = sorted(num,reverse=True) print '升序:',anum # 升序: [2, 3, 4 ...
- Android常用布局、文件存储与权限、XML
常用的布局 LinearLayout Android 2.2开始fill_parent改名为match_parent ,从API Level为8开始我们可以直接用match_parent来代替fill ...
- zabbix前台jsrpc注入
zabbix是一个开源的企业级性能监控解决方案. 官方网站:http://www.zabbix.com zabbix的jsrpc的profileIdx2参数存在insert方式的SQL注入漏洞,攻击者 ...
- Hibernate三大类查询总结
Hibernate目前总共分为三大类查询:cretiria,hql,本地sql [以下篇章搜集于网络,感谢作者] 第一:关于cretiria的查询 具有一个直观的.可扩展的条件查询API是Hibern ...
- Python中的引号用法总结
Python中的引号: 1.表示多行注释--一对三个单引号或双引号表示多行注释 #-*-coding :utf-8-*- #防止乱码,方便在程序中添加中文,把编码统一成UTF-8 from selen ...
- HTML <hr>标签
HTML的<hr>标签用来插入一个水平分割线以把文档分成几部分. 水平线通常显示为一条突出的或者凹下去的线条. 在页面中特定的位置插入水平线,既能使页面的结构清晰,又能使整个页面显得美观, ...
- HTML——CSS的基础语法1
页面中所有CSS代码,需要写入到<style></style>标签中. style标签的type属性应该选择text/css,但是type属性可以省略. 1.CSS常用选择器 ...