apache服务器使用wsgi部署django站点
来源:互联网 发布:阿里云系统盘和数据盘 编辑:程序博客网 时间:2024/05/21 21:01
先说一下个人的部署环境,分别部署过两次(ubuntu13.04+apache2+django1.4.5和ubuntu12.04+apache2+django1.4.5)
介绍一下背景,django站点已经开发完毕,只需要部署
为了叙述得清楚点,所以从安装环境开始介绍
首先安装apache2和wsgi
sudo apt-get install apache2 libapache2-mod-wsgi
下面一步安装django,分两种情况叙述
1、使用apt-get直接安装
sudo apt-get install python-django
2、使用安装包安装
首先安装所需的setuptools
sudo apt-get install python-setuptools
然后下载自己所需的Django版本https://www.djangoproject.com/
解压,并安装
tar zxvf Djangoxxxxcd Djangoxxxxxsudo python setup.py install完成安装后,先进入将Django工程拷入apache目录下
sudo cp webserver/ /var/www
更改一下webserver的权限,这一步一定注意,我就被权限问题坑了两天,最后才发现时工程目录的权限问题
sudo chmod -R 755 webserver
由于开发时是用的django1.4.5因此已经自带wsgi文件,工程目录下叫做django.wsgi
直接用它即可
为了后面的方便,在DNS缓存/etc/hosts中加入下面一行
www.example.com 127.0.0.1
然后采用虚拟站点的方式进行配置
进入/etc/apache2/site-availble
创建虚拟站点文件myweb,并配置,输入以下内容(关于静态文件的处理写了下注释)
也可以直接把下面的内容覆盖到default,如果这样就不用去改hosts了
<VirtualHost *:80>ServerName www.example.comDocumentRoot /var/www/webserverAlias /static/ /var/www/webserver/static/ #用来解决css/js/img等静态文件的问题,css.js.img均存在webserver/static下<Directory /var/www/webserver/static/>Order deny,allowAllow from all</Directory> WSGIScriptAlias / /var/www/webserver/django.wsgi<Directory /var/www/webserver>Order allow,denyAllow from all</Directory></VirtualHost>用a2ensite使虚拟主机生效
sudo a2ensite myweb
让apache2重新加载一下
sudo service apache2 reload
打开浏览器,输入www.example.com(如果直接覆盖的default则输入127.0.0.1),一切运行正常
但仍然存在一个问题,Django的admin模块的静态文件失效,下面解决这个问题,进入工程目录webserver,输入collectstatic命令,导出静态文件
python manage.py collectstatic把导出的css js img整理到static文件夹下对应的文件夹里即可
再重新加载一下apache2,打开浏览器,一切正常!
- apache服务器使用wsgi部署django站点
- 使用Apache服务器wsgi方式部署Django应用
- 使用WSGI在Apache服务器中部署Django项目实例
- Apache+WSGI+Django+Python的服务器部署
- 部署django+apache wsgi
- Ubuntu 服务器上Apache + WSGI 部署Django项目
- Mac Apache Django WSGI 部署
- 如何使用WSGI部署Django(1.8)
- Mac下Django通过WSGI部署到Apache
- mac+apache+django+wsgi
- 使用Apache与mod_wsgi部署Django应用到服务器
- 使用wsgi模块将Django加于apache
- 小白装django+apache+wsgi+mysql
- 将django部署到Apache服务器
- django 部署到Apache服务器上
- 将django部署到Apache服务器
- django+python+apache+生产服务器 部署
- 将Django应用部署到Apache服务器
- python高级数据类型
- Ojective-C 回顾、总结
- VC++ List Box控件 详解1
- 移动电子商务网站可用性-首页和导航
- C++第9周项目1 - 实现复数类中的运算符重载
- apache服务器使用wsgi部署django站点
- 大话设计模式 组合模式
- windows 下自动 ping 服务器的小脚本
- 关于安卓高版本访问网络出现.NetworkOnMainThreadException异常的问题 .
- VC++ List Box 控件 详解2
- strtol函数
- centos 安装libpcap
- 关于Java性能九大谬论 你知道哪些?
- 如何在Eclipse中显示行号