Apache如何部署django项目

在此之前,我们一直使用django的manage.py 的runserver 命令来运行django应用,但这只是我们的开发环境,当项目真正部署上线的时候这做就不可行了,必须将我们的项目部署到特定的web服务器上。

安装apache

Apache是非常有名的web服务器软件,如果想让我们web项目运行几乎离不开它。

Apache官方网站:http://httpd.apache.org/

根据自己的环境,选择相应的版本进行下载。apache 官网没有windows 64位版本,可以通过下面的链接进行下载:win7 64位:http://www.apachelounge.com/download/win64/

下载安装完成,apahche的目录结构如下:

修改conf/httpd.conf文件:

……
ServerRoot "D:/pydj/Apache24"
……
Listen 127.0.0.1:8089  #修改端口号
……
ServerName www.example.com:8089
……
DocumentRoot "D:/pydj/Apache24/htdocs"
<Directory "D:/pydj/Apache24/htdocs">
……
ScriptAlias /cgi-bin/ "D:/pydj/Apache24/cgi-bin/"
……
<Directory "D:/pydj/Apache24/cgi-bin">
  AllowOverride None
  Options None
  Require all granted
</Directory>
…… 

主要就是路径和端口号的修改,如果你在启动apache的httpd.exe程序时一闪就没了,请检查这些配置。

启动bin/httpd.exe程序

通过浏览器访问:http://127.0.0.1:8089/

现在可以说明apache工作是正常的了。

安装mod_wsgi

  The aim of mod_wsgi is to implement a simple to use Apache module which can host any Python application which supports the Python WSGI interface.

The module would be suitable for use in hosting high performance production web sites, as well as your average self managed personal sites running on  web hosting services.

(mod_wsgi的目的是实现一个简单的使用Apache模块可以举办任何Python应用程序支持Python的WSGI接口。该模块将适用于主机的高性能生产的网站,以及一般的自我管理个人网站的网页寄存服务运行。)直接google翻译的,凑合的大概理解是干啥用的。

mod_wsgi网站:http://code.google.com/p/modwsgi/

下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

如win7 64位、python 2.7.6、apache(httpd-2.4.10)对应版本为:mod_wsgi-3.5.ap24.win-amd64-py2.7.zip

解压之后将得到一个mod_wsgi.so 文件,将其拷贝到Apache24\modules\ 目录下。

配置apache和django项目

因为你的目录一定和我的一样,所以,我再强调一下我的目录:

apache 存放目录:D:\pydj\Apache24

django项目目录:D:\pydj\myweb

再次打apache的配制文件httpd.conf:

……
#添加mod_wsgi.so 模块
LoadModule wsgi_module modules/mod_wsgi.so
#指定myweb项目的wsgi.py配置文件路径
WSGIScriptAlias / D:/pydj/myweb/myweb/wsgi.py
#指定项目路径
WSGIPythonPath D:/pydj/myweb

<Directory D:/pydj/myweb/myweb>
<Files wsgi.py>
  Require all granted
</Files>
</Directory>

上面的路径,请根据自己的实际情况进行修改。

下面配置myweb/wsgi.py文件:

……
import os

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myweb.settings")

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

在我们生成djnago项目时这些信息已经自动生成,其实我们不用对其做任何修改。

打开settings.py文件添加:

……
ALLOWED_HOSTS = ['127.0.0.1', 'localhost'] 

再次启动Apache24/bin/httpd.exe程序

通过浏览器访问:http://127.0.0.1:8089/

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 在Linux系统上部署Apache+Python+Django+MySQL环境

    Linux+apache+mysql+python+mod_python+Django 说明:系统rhel 5.3,默认安装httpd.mysql,没有安装的,请下载安装RPM包,删除/etc/httpd/modules/mod_python.so,如果有的话. 一.安装python wget http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz  tar xfz mod_python-2.7.11.tgz cd python-2.7.1

  • 使用相同的Apache实例来运行Django和Media文件

    Django本身不用来服务media文件:应该把这项工作留给你选择的网络服务器. 我们推荐使用一个单独的网络服务器(即没有运行Django的一个)来服务media. 想了解更多信息,看下面的章节. 不过,如果你没有其他选择,所以只能在同Django一样的Apache VirtualHost 上服务media文件,这里你可以针对这个站点的特定部分关闭mod_python: <Location "/media/"> SetHandler None </Location&g

  • windows+apache+mod_python配置django运行环境

    1.创建mysite测试站点:django-admin.py startproject mysite 2.创建测试页:hello.py,内容如下: from django.http import HttpResponse def index(request): return HttpResponse('Hello, Django!') 3.创建mod_py_dj.conf配置文件,内容如下: LoadModule python_module modules/mod_python_so.pyd L

  • windows 10下安装搭建django1.10.3和Apache2.4的方法

    环境介绍 python3.5.2 64位 django 1.10.3 apache 2.4 64位 windows 10 重点在apache上. python 和django 相信有兴趣看这篇文章的基本上也都已经了解了. 安装Apache2.4 地址:http://www.apachelounge.com/download/ 下载:vc_redist.x64.exe 直接安装  vc_redist_x64/86.exe. 下载:httpd-2.4.17-win64-VC14.zip 配置环境变量

  • Apache上部署Django步骤详细介绍

    Apache上部署Django 目前,Apache和mod_python是在生产服务器上部署Django的最健壮搭配.mod_python 是一个在Apache中嵌入Python的Apache插件,它在服务器启动时将Python代码加载到内存中. Django 需要Apaceh 2.x 和mod_python 3.x支持. Apache的配置参见:http://www.djangoproject.com/r/apache/docs/  使用mod_python部署 1.为了配置基于 mod_py

  • 通过mod_python配置运行在Apache上的Django框架

    为了配置基于 mod_python 的 Django,首先要安装有可用的 mod_python 模块的 Apache. 这通常意味着应该有一个 LoadModule 指令在 Apache 配置文件中. 它看起来就像是这样: LoadModule python_module /usr/lib/apache2/modules/mod_python.so Then, edit your Apache configuration file and add a <Location> directive

  • python+Django+apache的配置方法详解

    本文实例讲述了python+Django+apache的配置方法.分享给大家供大家参考,具体如下: 下载安装xampp套件 下载mod_python-3.3.1.win32-py2.5-Apache2.2.exe 下载python-2.5.4.msi 下载Django 下载MySQL-python-1.2.2.win32-py2.5.exe 1.先安装Python-2.5.4.msi 2.安装 Django-1.1.1-final.tar.gz 解压开,然后解压到某个目录如:(D:/Dev) 在

  • 简单的Apache+FastCGI+Django配置指南

    在Apache和FastCGI上使用Django,你需要安装和配置Apache,并且安装mod_fastcgi. 请参见Apache和mod_fastcgi文档: http://www.djangoproject.com/r/mod_fastcgi/ . 当完成了安装,通过 httpd.conf (Apache的配置文件)来让Apache和Django FastCGI互相通信. 你需要做两件事: 使用 FastCGIExternalServer 指明FastCGI的位置. 使用 mod_rewr

  • Linux下将Python的Django项目部署到Apache服务器

    这几天花了点时间,将把django开发好的web项目部署到Apache上,参考了官方的一些文档和互联网上的文档,还是花了比较多的时间,这里把配置的过程说一下. 方便有需要的朋友,可以参考,少走弯路! 1. django项目部署环境说明 操作系统 : Red Hat Enterprise Linux Server release 5.3 (Tikanga) x86_64 apache版本 : httpd-2.2.3-22.el5 mod_wsgi版本 : mod_wsgi-3.2-1.el5 fe

  • 在Apache服务器上同时运行多个Django程序的方法

    在同一个 Apache 实例中运行多个 Django 程序是完全可能的. 当你是一个独立的 Web 开发人员并有多个不同的客户时,你可能会想这么做. 只要像下面这样使用 VirtualHost 你可以实现: NameVirtualHost * <VirtualHost *> ServerName www.example.com # ... SetEnv DJANGO_SETTINGS_MODULE mysite.settings </VirtualHost> <Virtual

随机推荐