跟php类似,要想使Apache能够处理python脚本(实际上Apache是不能处理脚本的,只是利用别的扩展模块处理相应脚本),就要给Apache安装相应的扩展模块。

Apache起初的python扩展是mod_python.so这个模块,但后来由于不在更新维护,所以大多使用mod_wsgi.so这个模块了。

另:wsgi是python专有的,定义了服务器与python解释器之间交流沟通的方式的协议。

部署第一步:给Apache安装mod_wsgi模块拓展

sudo apt-get install libapache2-mod-wsgi

安装完成后,会自动帮你把apache必要的软连接什么的都设置好。(即无需在手动写一个LoadModule mod_wsgi之类的东西了)

(libapache2有n多的模块,应该都可以这么安装,不用一个个手动网上下载了)

部署第二步:给apache一个配置文件,指定根目录,并说明请求交给谁处理:

第一行WSGIScriptAlias 指明:只要是访问网站根目录 / ,都交给 /home/lisong/lisongsite/django.wsgi 处理。(另外说明:我的项目在/home/lisong/lisongsite)

第二行至以后,就是普通的apache赋予目录访问权限的事儿了。

部署第三步:给Django一个请求接收文件,接收从apache给过来的请求,并分发给相应的URL去处理。

此脚本大体分两部分:

第一部分,把项目路径、项目下的应用路径添加到path中。其实第一部分和第二部分都是一个目的,为了让django能找到相应的项目路径、脚本等等。

第二部分,指明DJANGO_SETTING_MODULE的路径,这样可以使请求进来之后,根据这个路径去寻找设置并做相应分发处理。项目所有的设置都在settings这个地方呢。

最后,重启apache,浏览器访问机器IP就可以了。

如果有问题,例如报500错什么的,可以看看apache错误日志,挺好用的。/var/log/apache2/error.log

在Apache上部署Django的更多相关文章

  1. apache上部署django的静态文件

    一直在优化自己博客的代码, 昨天把css样式表分离出来, 用作静态 文件, 但是自己还没学django怎么使用静态文件, 经过一番google 终于解决了. django 使用静态文件有两种方法, 一 ...

  2. Apache上部署Django

    0. 部署环境 Ubuntu 14.04 on AliYun Apache 2.4.7 Python 3 [2.7升级3请看http://www.cnblogs.com/manhua/p/423504 ...

  3. 如何一步步在生产环境上部署django和vue

    本文由云+社区发表 本文主要讲述了如何一步步在生产环境上部署django和vue,操作系统默认为centos 说明:后文中出现的以下字符串均表示具体的路径或者名称,含义如下: DJANGO_DIR-- ...

  4. CentOS上部署Django+Nginx+Uwsgi环境

    在CentOS上部署Django+Nginx+Uwsgi环境 奇谭  2016-09-01 评论  Linux  python django nginx uwsgi VirtualEnv的作用:创建隔 ...

  5. 基于Nginx和uWSGI在Ubuntu上部署Django项目

    前言: 对于做Django web项目的童鞋,重要性不言而喻. 参考:https://www.cnblogs.com/alwaysInMe/p/9096565.html https://blog.cs ...

  6. Ubuntu下Apache中部署Django

    环境:ubuntu12.04 server | apache2 | django1.6 | python2.7 | mod_wsgi 1. 安装apache2: sudo apt-get instal ...

  7. 服务器上部署django项目流程?

    1. 简单粗暴 项目开发完毕,在部署之前需要再配置文件中将 ALLOWED_HOSTS配置设置为:当前服务器IP或*,如: ALLOWED_HOSTS = ["*",] 然后将源码 ...

  8. 在pythonanywhere上部署Django应用

    参考:https://tutorial.djangogirls.org/zh/deploy/ 资料讲的很明了,仅在设置上做几点补充. 1.设置相对路径 import os BASE_DIR = os. ...

  9. 全站之路一路坑(2)——在Apache下部署django博客

    上一篇博客:全栈之路一路坑之使用django开发博客 开发完博客之后,很多后续应用需要博客部署之后才可以使用,这篇文章就来尝试一下将开发好的博客部署到服务器上. 开发阶段,一直使用的是virtuale ...

随机推荐

  1. [USACO1.1.4]坏掉的项链Broken Necklace

    P1203 [USACO1.1]坏掉的项链Broken Necklace 标签 搜索/枚举 USACO 难度 普及- 题目描述 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N&l ...

  2. leetcode345——Reverse Vowels of a String(C++)

    Write a function that takes a string as input and reverse only the vowels of a string. Example 1:Giv ...

  3. STL unique使用问题

    string strs[] = {"one","one","two","three","three" ...

  4. 菜鸟的MySQL学习笔记(三)

    4-1插入记录INSERT INSERT [INTO] tbl_name [(col_name)] {VALUES|VALUE} ({expr|DEFAULT},...), (...), ...   ...

  5. mac中的xampp配置xdebug

    [xdebug] zend_extension=/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20121212/ ...

  6. C语言学习总结(二) 运算流程

    第三章.基本运算 (运算符.算数运算符.关系运算符.逻辑运算符.三目运算符.ASXLL码) 一.什么是运算符? 概念:是编译程序执行特定的算术或逻辑操作的符号: 分类:算术运算符. 关系运算符.逻辑运 ...

  7. 从零到一:caffe-windows(CPU)配置与利用mnist数据集训练第一个caffemodel

    一.前言 本文会详细地阐述caffe-windows的配置教程.由于博主自己也只是个在校学生,目前也写不了太深入的东西,所以准备从最基础的开始一步步来.个人的计划是分成配置和运行官方教程,利用自己的数 ...

  8. Quartz1.8.5例子(十一)

    /* * Copyright 2005 - 2009 Terracotta, Inc. * * Licensed under the Apache License, Version 2.0 (the ...

  9. ubuntu maven 安装 设置

    http://blog.csdn.net/tiefanhe/article/details/9774189 1.安装 maven ,下载地址:http://maven.apache.org/downl ...

  10. Android之TextView组件学习

    一.基础学习 1.findViewById返回View类,该类是所有View组件的父类. 2.子类比父类拥有更多的属性和方法,不过子类找不到的话去父类找 3.marquee:华盖,跑马灯效果:orie ...