ubuntu下配置django+apache2+mysql+mod_python+Python

【声明】:本文是参考changefuture原文写的,修改了原文一些错误并应用于本机,主要为apache2针对Debian体系的修改


个人机器配置说明:

 UbuntuPythonmysqlApache2Django
版本14.04LTS2.7.6Ver 14.142.41.4.13

1.install Python

最新的Ubuntu操作系统是含有Python的,可以通过 Python -V 查看的:

kevin@kevin-Aspire:~$ python -V
Python 2.7.6


2.install MySQL

使用最简单的方法:sudo apt-get install mysql-server mysql-client


3.install Apache

继续使用命令:sudo apt-get install apache2


4.install MySQLdb

sudo apt-get install python-mysqldb


5.install mod_python

sudo apt-get install libapache2-mod-python 


6.install Django

到网站上下载: www.djangoproject.org  Django-x.x.x.tar.gz 

解压:tar xzvf  Django-1.2.1.tar.gz

安装:sudo python setup.py install


7.测试Django 和 MySQLdb是否成功

在命令行:python

>>>import django

>>>import MySQLdb

如果没有错误提示,则安装成功!

>>>exit()


8.运行一个简单程序不是用apache

cd /var/www

sudo  python /usr/local/bin/django-admin.py startproject server

cd server

ls

可以看到在server 中多了几个文件,不管他

python manage.py runserver

出现如下提示:

0 errors found
Django version 1.4.13, using settings 'server.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

证明一切OK!

打开浏览器:http://127.0.0.1:8000/server 出现如下画面:

 

It worked!

Congratulations on your first Django-powered page.


django是个小的服务器,现在换没有运行在apache2上了


9.配置apache2

cd /etc/apache2

ls

这里应该可以看到有apache2.conf ports.conf 以及三个*-enabled和三个*-available文件夹 (还有两个暂时与我们无关的)

其实我主要是想说这里没有了httpd.conf文件,这是apache在Debain下很大的不同,更多信息请看文章最后的**注释**

首先查看一下你的mods-enabled文件夹下有没有python.load文件,如果有的话可以跳过*1*

  *1*   cd /etc/apache2/mods-available

           sudo vi python.load

           添加: LoadModule python_module /usr/local/lib/apache2/modules/mod_python.so

           保存退出

           cd /etc/apache2

           ln -s mods-available/python.load mods-enabled/python.load

  *2*   cd /etc/apache2/mods-available

           sudo vi python.conf

           添加: <Location "/">
                        SetHandler python-program
                        PythonPath "['/var/www/server'] + sys.path"              //此处需要到server目录,我们的文件在server/server下
                        PythonHandler django.core.handlers.modpython
                        SetEnv DJANGO_SETTINGS_MODULE server.settings  //server为上面django的工程名
                        PythonOption django.root /server
                        PythonDebug on
                    </Location>

           保存退出

           cd /etc/apache2

           ln -s mods-available/python.conf mods-enabled/python.conf

 *3*    cd /etc/apache2

           sudo vi ports.conf

           添加 Listen 8000 //Django默认监听8000端口,而apache2默认为80

           保存退出

 *4*    sudo service apache2 restart  //重启apache2 

 *5*    打开浏览器:http://127.0.0.1:8000

出现:

It worked!

Congratulations on your first Django-powered page.

证明apache以配置完成

现在这个工程没有任何程序


大家继续加油吧


**注释**

Debian体系下的Apache2安装倾向于以尽量灵活的方式添加移除模块、虚拟主机还有额外的配置目录,

这样可以使得自动管理、改变服务器尽可能地简单。注意这里的体系层次(指Apache2)与标准的Apache配置有很大的不同。

apache2.conf为主要配置文件,但我们不需要直接配置它。

available文件夹中是所有的配置文件,我们可以通过将对应文件的软连接加入到相应的enabled文件夹来实现对所需模块的引用,

相关端口配置在ports.conf中

更多的说明参考/etc/apache2/apache2.conf的开头注释

以及/usr/share/doc/apache2/README.Debian


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值