Django,是一款针对Python环境的WEB开发框架,能够帮助我们构架快捷、简单的WEB框架设置,Django框架非常适合开发内容应用环境,所以在本文中,麦子将整理基于Centos系统部署安装Django、Apache 、mod_wsgi环境,用于我们开发Python WEB项目的需要。

CentOS 5系统安装Django、Apache 、mod_wsgi部署Python环境教程

第一、安装依赖环境

在准备安装Django框架部署之前,我们需要先安装EPEL依赖环境,因为可能默认的CENTOS环境没有完善的最新部署包。

rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm

我们先部署EPEL依赖环境,然后执行更新和安装:

yum update
    yum install python-setuptools httpd mod_wsgi

我们更新当前的系统环境,以及必要的软件环境。然后就是数据库的安装。

1、 PostgreSQL数据库

yum install postgresql python-psycopg2

2、SQLite数据库

yum install sqlite python-sqlite

3、MYSQL数据库

yum install python-devel mysql-devel gcc wget python-setuptools

根据我们项目的需要,上面麦子有提供3种数据库环境,我们根据需要选择安装。检查最新版本的MYSQL数据库,然后部署安装。

cd /opt/
    wget http://downloads.sourceforge.net/project/mysql-python/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz
    tar -zxvf MySQL-python-1.2.3.tar.gz
    cd MySQL-python-1.2.3/
    python setup.py build
    python setup.py install

第二、安装Django

我们可以有两种方法来安装Django框架,选择从EPEL库安装Django,或者我们可以直接用Python的easy_install方法安装。

1、yum install Django

2、easy_install Django

两个方法,我们选择一个就可以。

第三、配置Django应用程序WSGI

如果我们希望能够让mod_wsgi访问Django程序,那我们需要创建一个属于这个站点项目的django.wsgi文件。在这个文章中,麦子以/srv/www/yd631.com/application作为目录应用。

创建文件:/srv/www/yd631.com/application/django.wsgi

import os
    import sys

sys.path.append('/srv/www/yd631.com/application')

os.environ['PYTHON_EGG_CACHE'] = '/srv/www/yd631.com/.python-egg'
    os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'

import django.core.handlers.wsgi
    application = django.core.handlers.wsgi.WSGIHandler()

然后将上面的内容部署进去。

第四、设置Apache

<VirtualHost yd631.com:80>
    ServerName yd631.com
    ServerAlias www.yd631.com
    ServerAdmin squire@yd631.com
    DocumentRoot /srv/www/yd631.com/public_html
    WSGIScriptAlias / /srv/www/yd631.com/application/django.wsgi
    <Directory /srv/www/yd631.com/application>
    Order allow,deny
    Allow from all
    </Directory>

Alias /robots.txt /srv/www/yd631.com/public_html/robots.txt
    Alias /favicon.ico /srv/www/yd631.com/public_html/favicon.ico
    Alias /images /srv/www/yd631.com/public_html/images
    Alias /static /srv/www/yd631.com/public_html/static

ErrorLog /srv/www/yd631.com/logs/error.log
    CustomLog /srv/www/yd631.com/logs/access.log combined
    </VirtualHost>

我们需要根据自己的网站路径,然后配置APACHE环境。

第五、部署Apache的应用

编辑/etc/httpd/conf.d/wsgi.conf文件,加上LoadModule wsgi_module modules/mod_wsgi.so

然后我们需要重启APACHE

/etc/init.d/httpd restart

到目前为止,我们的环境已经可以正常运转,如果我们还不行,可以执行(chkconfig httpd on)。这样我们每次重启服务器都会自动加载开机启动,不需要我们单独启动WEB服务器。到目前为止,我们已经成功的在centos5环境中部署了Django应用程序,以及mod_wsgi、Apache。

CentOS 5系统安装Django、Apache 、mod_wsgi部署Python环境教程的更多相关文章

  1. 部署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 ...

  2. Apache + mod_wsgi部署webpy应用

    Apache + mod_wsgi部署webpy应用   引用:http://webpy.org/cookbook/mod_wsgi-apache.zh-cn 下面的步骤在Apache-2.2.3 ( ...

  3. python-pycharm中使用anaconda部署python环境

    pycharm中使用anaconda部署python环境 今天来说一下python中一个管理包很好用的工具anaconda,可以轻松实现python中各种包的管理.相信大家都会有这种体验,在pycha ...

  4. 离线环境下自动化部署python环境(含openssl)

    遇到有项目要在内网环境下安装python项目,所以空余时写了自动化部署python环境和python项目的脚本,由于项目涉密,这里仅提供自动化部署python环境的shell脚本,包括openssl的 ...

  5. centos部署Python环境

    在centos上部署Python之前,我们需要先配置开发环境. 1.安装Python依赖的开发工具包 gcc自然少不了,可以直接用“Development Tools”: yum grouplist ...

  6. CentOS 6.4安装Apache+MySQL+PHP的图文教程

    LAMP 实际上就是 Linux.Apache.MySQL.PHP 四个名称的缩写,当然最后一个 “P” 还有其他说法是 Perl 或者 Python.不用多说了,本文讲解的就是 Linux.Apac ...

  7. Django + Apache + wsgi配置和环境搭建(ubuntu)

    上一篇写了Django + nginx + uwsgi配置和环境搭建(ubuntu) 由于公司服务器环境问题,又配置了apache的环境.记录例如以下: 一. 安装环境: #apache sudo a ...

  8. Apache mod_wsgi部署Django项目

    学习python web开发,Django部署备忘 1.下载mod_wsgi,下载路径如下:http://code.google.com/p/modwsgi/downloads/list挑选For 2 ...

  9. CentOS6下配置Django+Apache+mod_wsgi+Sqlite3过程

    0. 安装环境: CentOs版本:      VMWare中CentOs 6.4 Apache版本:      Httpd 2.2.15 http://httpd.apache.org/ Sqlit ...

随机推荐

  1. MySQL索引原理及慢查询优化 转载

    原文地址: http://tech.meituan.com/mysql-index.html MySQL凭借着出色的性能.低廉的成本.丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库.虽然性能 ...

  2. javascript中的窗口和框架

    框架: 在网络上我们可以看到很多WEB应用程序都是使用框架(frame)来分隔浏览器窗口的,就想一块块玻璃隔板把窗口分隔成好几个小窗口,并且可以在不同的小窗口中加载显示不同的页面,这样在我们看来好像是 ...

  3. File API 读取上传的文件

    1, 在html 文档中,<input type="file"> 我们可以选择文件进行上传,但这时只能上传一个文件.如果加上multiple 属性,可以上传多个文件,上 ...

  4. python GUI输入窗口

    为了解决 sublime text 下 python 的 raw_input() 函数无法起效,便萌生了个用 GUI 窗口来获取输入的想法,一开始想用 Tkinter,后来想了下还是用 PyQt 吧, ...

  5. ROS学习笔记(六)——创建、编译包

    $ cd ~/catkin_ws #如果新开一个终端,就需要先吧ROS的工作空间配置好 $ source devel/setup.bash #工作空间的环境配置 #正式开始创建包 $ catkin_c ...

  6. MySQL wamp密码修改

    WAMP安装好后,mysql密码是为空的,那么要如何修改呢?其实很简单,通过几条指令就行了,下面我就一步步来操作. 首先,通过WAMP打开mysql控制台. 提示输入密码,因为现在是空,所以直接按回车 ...

  7. iOS 页面间几种传值方式(属性,代理,block,单例,通知)

    第二个视图控制器如何获取第一个视图控制器的部分信息 例如 :第二个界面中的lable显示第一个界面textField中的文本 这就需要用到属性传值.block传值 那么第一个视图控制器如何获的第二个视 ...

  8. MySQL DCL 整理

    DCL(Data Control Language)数据库控制语言  授权,角色控制等GRANT 授权REVOKE 取消授权

  9. UIautomator Python测试

    #!/usr/bin/env python # -*- coding: utf-8 -*- import unittest from mock import MagicMock, patch impo ...

  10. 小tip:关于typeof,instanceof,toString(),valueOf(),toLocaleString(),join(),reverse(),sort(),pop(),push(),shift(),unshift()

    typeof:用于检测一个变量是否是基本数据类型.instanceof用于检测某引用对象是什么类型的对象. var s = "Nicho"; var b = true; var n ...