Apache2 部署 Django
环境:
debian8
apache2.4.10 #请注意自己的apache版本,不同版本配置文件结构差异很大
django1.10
python3.4
默认apache2已经安装
Django项目路径 /var/www/mysite
---------------------------------------------------------------------------------------------------
首先安装MOD_WSGI
- apt-get install libapache2-mod-wsgi-py3 #python3
- apt-get install libapache2-mod-wsgi #python2
创建django项目
- cd /var/www
- django-admin startproject mysite
- cd mysite
- mkdir static
- cp -R /usr/local/lib/python3./dist-packages/django/contrib/admin/static/* ./static/ #复制后台样式文件到项目目录
创建虚拟主机配置文件
- cd /etc/apache2/sites-enabled/
- cp -default.conf -default.conf
- nano -default.conf
- <VirtualHost *:>
- ServerAdmin webmaster@localhost
- DocumentRoot /var/www/mysite
- ErrorLog ${APACHE_LOG_DIR}/error.log
- CustomLog ${APACHE_LOG_DIR}/access.log combined
- # 存放用户上传图片等文件的位置
- Alias /media/ /var/www/mysite/media/
- # 静态文件(js/css/images)的存放位置
- Alias /static/ /var/www/mysite/static/
- # 允许通过网络获取static的内容
- <Directory /var/www/mysite/static/>
- Require all granted
- </Directory>
- # 最重要的!通过wsgi.py让Apache识别这是一个Django工程,别漏掉前边的 /
- WSGIScriptAlias / /var/www/mysite/mysite/wsgi.py
- # wsgi.py文件的父级目录
- <Directory /var/www/mysite/mysite/>
- <Files wsgi.py>
- Require all granted
- </Files>
- </Directory>
- </VirtualHost>
- # vim: syntax=apache ts= sw= sts= sr noet
编辑 /etc/apache2/ports.conf 添加一行 Listen 81 #监听81端口,就是我们新建的虚拟主机
编辑 /etc/apache2/mods-enabled/wsgi.load
- LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so-3.4 #python3
- LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so #python2
编辑 /etc/apache2/mods-enabled/wsgi.conf
添加一行 WSGIPythonPath /var/www/mysite #项目所在路径
这个时候就差不多了可以 service apache2 start
访问:127.0.0.1:81
It worked!
Congratulations on your first Django-powered page.
访问:127.0.0.1:81/admin 会报错
初始化数据库文件
manage.py migrate
OK!
如果是在虚拟机或远程主机部署别忘了在settings.py中修改ALLOWED_HOSTS = [],添加可访问域名或IP列表
CentOS可以参考http://www.cnblogs.com/starof/p/4685132.html
Apache2 部署 Django的更多相关文章
- apache2部署django以及静态文件
django中的runserver只是一个很简单的web服务器,在开发中是不建议使用的,django在官方中建议是使用apache2等web服务器来配置,并且django会把静态文件交由apache2 ...
- CentOS 7下使用Apache2部署Django项目,解决文件名中含有中文报错的问题
系统版本: CentOS 7.3Apache 2.4 Django 1.11 问题描述 Django项目涉及上传操作,上传文件名称含有中文,若使用runserver启动服务,没有问题!若将Django ...
- apache2部署django的错误
apache的日志例如以下报错: /var/www/my_project/myproject/wsgi.py cannot be loaded as Python module ImportError ...
- Apache2.4部署django出现403 Forbidden错误解决办法
前言:Apache2.4部署django出现403 Forbidden错误最好要结合apache中的错误日志来观察出现何种错误导致出现403错误 下午百度了一下午没找到解决办法,试了n种方法,简直坑爹 ...
- Ubuntu16.04 apache2 wsgi 部署django
在Ubuntu16.04上部署django其实还算简单直观,最重要的问题就是路径设置正确,并且保证版本统一,这个测试是在 Apache/2.4.18 (Ubuntu) apt-get install ...
- mac osx 上面部署Django项目 apache+mysql+mod_wsgi
1.安装Xcode command line tools 首先,编译mysql和Homebrew需要用到Xcode command line tools,所以首先安装command line tool ...
- apache部署django记录
在ubuntu下通过apache部署django 首先需要下载python,django,apache以及wsgi模块 python基本已经自带,我用的是2.7,不是的话可以重新装一个 下载djang ...
- Windows下Apache部署Django过程记录
Win7/Apache/Python2.7/Django1.9部署Web 环境: Windows7 Apache httpd-2.4.16-win64-VC14 Python2.7.11 Djan ...
- 部署django - Apache + mod_wsgi + windows
部署django - Apache + mod_wsgi + windows 1.环境 django 1.6.2 python 3.3 32位 apache 2.4.7 32位 一个可以使用的djan ...
随机推荐
- AAS代码第2章
[root@node1 aas]# pwd /root/aas [root@node1 aas]# wget http://archive.apache.org/dist/spark/spark-1. ...
- 总结Themida / Winlicense加壳软件的脱壳方法
总结下Themida/ Winlicense (TM / WL) 的脱壳方法. 1, 查看壳版本,这个方法手动也可以,因为这个壳的版本号是写在程序里面的,在解压后下断点即可查看,这里有通用的脚本,我 ...
- 高精度快速预览打开dwg文件的CAD控件CAD Image DLL介绍及下载
CAD Image DLL对于DXF格式, DWG格式(AutoCAD R12 到AutoCAD 2004/2005), PLT 以及 HPGL/HPGL2文件都有快速的显示速度和精度,开发者再也不会 ...
- Linux下man安装及使用方法
常用法: man [section] name 其中: section 指的是手册页的哪个部分,可以是1.2.3…8.,若不指定,man会按照次序依次查找,知道找到第一个. name 指的是某个命令. ...
- js②
操作符 ECMA-262描述了一组用于操作数据值的操作符,包括算术操作符(如加号和减号).位操作符.关系操作符和相等操作符. 一元操作符 递增和递减操作符(++ --) 一元加和减操作符 对非数值应用 ...
- 【python】闭包、@修饰符(装饰器)、
闭包:(返回函数的行为叫闭包??) #函数也是对象,所以可以被传递 def line_conf(a,b): def line(x): return a*x+b return line line1=li ...
- Activity的保存状态和状态恢复
Activity的保存状态和状态恢复 当系统内存不足时,系统会强制结束一些不可见的Activity以节省内存资源.在某些情况下,当被强制结束的Activity再次显示时会出现一些问题. 例如:一个AP ...
- C++中的文件读取结束
while(cin>>N>>M) { } ok???
- C#编程:SqlCommand.Parameters.Add()方法的参数问题。
在存储过程中添加2个参数 sql语句 例: “update [tablename] username = @username where id=@id” 然后把需要的 command.Paramete ...
- C语言程序设计第4堂作业
大家注意:本次作业稍有增加,由于放假期间大家空闲时间比较充足,将之前学习过程中遗留的问题必须在假期解决. 本次课学习主要内容: 分支结构中的二分支结构.多分支结构和else-if语句 掌握字符型数 ...