Home >Database >Mysql Tutorial >ubuntu搭建apache+python+django+mysql web开发环境
我是在 ubuntu12.04 的环境下配置的,系统默认安装 python2.7.3 。 还需要安装 apache,mod_python,django 以及 mysql 一 . 安装 apache2 sudo apt-get install apache2 安装完成,重启 : sudo /etc/init.d/apache2 restart 在浏览器里输入 http://localhost
我是在ubuntu12.04的环境下配置的,系统默认安装python2.7.3。
还需要安装apache,mod_python,django以及mysql
一.安装apache2
sudo apt-get install apache2
安装完成,重启:
sudo /etc/init.d/apache2 restart
在浏览器里输入http://localhost或者是http://127.0.0.1,如果看到了It works!,那就说明Apache就成功的安装了,Apache的默认安装,会在/var下建立一个名为www的目录,这个就是Web目录了,所有要能过浏览器访问的Web文件都要放到这个目录里。
apache2配置文件说明:
apache2.conf是一个总的配置文件,一般不去修改它。
httpd.conf填写自定义的公共配置。
每个站点各自的配置文件都建立了一个软连接到sites-enabled。
二.安装mod_python
第一步
sudo apt-get install libapache2-mod-python
第二步,将python模块加入到启用列表中(我装完mod_python后python模块已经加入到启用列表中了,所以这一步跳过了)
sudo ln -s /etc/apache2/mods-available/python.load /etc/apache2/mods-enabled/
第三步,配置mod_python
先在/etc/apache2/mods-available/下新建一个文件python.conf
sudo vi /etc/apache2/mods-available/python.conf
加入如下内容:
<directory> AddHandler mod_python .py PythonHandler test PythonDebug On </directory>
然后同样加入启用列表:
sudo ln -s/etc/apache2/mods-available/python.conf /etc/apache2/mods-enabled/
第四步,重启apache服务器
sudo /etc/init.d/apache2 restart
第五步,测试
在/var/www下新建一个文件,test.py,输入内容为:
from mod_python import apache def handler(req): req.content_type="text/plain" req.write("hello!") return apache.OK
在浏览器输入http://localhost/test.py
显示hello!,就表明已经运行成功
三.安装Django
官网下载安装包,然后安装
1.tar xzvf Django-*.tar.gz
2.cd Django-*
3.sudo python setup.py install
安装完成。
如果装完在/usr/local/bin目录下没有django-admin.py文件,那就将这个文件添加到/usr/local/bin目录。这个文件在/usr/local/lib/python*/dist-packages/django/bin目录下。
默认情况下runserver命令启动服务器的端口为8000,只监听本地连接
如果你希望改变端口,增加一个命令行参数即可
python manage.py runserver 8080
你也可以改变服务器监听的IP地址,当你同其它开发者分享一个开发站点时很有用
python manage.py runserver 0.0.0.0:8080
上面的命令使得Django监听任何网络接口,这样的话就允许其它计算机连接该服务器
创建项目
运行”django-admin.pystartproject mysite”将会在你的当前目录下创建一个mysite目录。
启动服务器,切换到你的项目目录里(cd mysite ),运行下面的命令:
python manage.py runserver
试着访问http://127.0.0.1:8000/,你将会看到“Welcometo Django”的页面。
本地化:
在setting.py文件中做如下设置:
TIME_ZONE= 'Asia/Shanghai' #设置时区为中国时区,代替默认的墨西哥时区
LANGUAGE_CODE= 'zh-cn' #设置为中文环境
将django部署至apache:
对/etc/apache2/sites-available/default这个配置文件进行类似如下修改:
<virtualhost> ServerAdmin webmaster@localhost DocumentRoot /home/michael/workspace/web/djcode #项目对应目录的上一级目录 <location> Allow from all SetHandler python-program PythonHandler django.core.handlers.modpython SetEnv DJANGO_SETTINGS_MODULE mysite.settings PythonDebug On PythonPath"['/home/michael/workspace/web/djcode/mysite',#项目对应目录 '/usr/local/lib/python2.7/dist-packages/django/bin']+ sys.path" </location> </virtualhost>
(编辑文件时去掉上面的注释)
在浏览器打开127.0.0.1,如果显示no module named modpython,则下载modpython.py文件并拷贝到目录'/usr/local/lib/python2.7/dist-packages/django/core/handlers'下。http://www.oschina.net/code/explore/Django-1.2.4/django/core/handlers/modpython.py
重启apache,运行成功。
四.安装MySQL数据库
安装MySQL很简单,sudo apt-get install mysql-server mysql-client
还需要安装几个文件才能配合django使用
1.先尝试在终端运行:mysql_config,如果提示没安装,那就运行sudo apt-get install libmysqlclient-dev
2.若MySQL是通过apt-get安装的,那么我们还要安装python-dev包,来提供安装过程中必须的Python.h这个头文件:
sudo apt-get install python-dev
3.最后安装MySQLdb:sudo apt-get install python-mysqldb
测试一下,在python命令行中执行:import MySQLdb
如果没出现错误,说明我们成功安装了MySQL-python。
数据库配置:
数据库配置也是在Django的配置文件里,缺省是 settings.py 。打开这个文件并查找数据库配置:
<span><span>DATABASE_ENGINE = ''</span></span> <span><span>DATABASE_NAME = ''</span></span> <span><span>DATABASE_USER = ''</span></span> <span><span>DATABASE_PASSWORD = ''</span></span> <span><span>DATABASE_HOST = ''</span></span> <span><span>DATABASE_PORT = ''</span></span>
配置纲要如下:
DATABASE_ENGINE 告诉Django使用哪个数据库引擎。
如果是MySQL,就在DATABASE_ENGINE现值后面添加mysql,其他的属性根据自己的配置填写。
最后,如果你要将网站架设在默认目录/var/www下,设置Ubuntu文件执行读写权限
由于Linux系统的安全性原则,改目录下的文件读写权限是只允许root用户操作的,所以我们不能在www文件夹中新建文件,也不能修改和删除,必须要先修改/var/www目录的读写权限。在界面管理器中通过右键属性不能修改文件权限,得执行root终端命令:
sudo chmod 777 /var/www
这样就可以写入html或py文件了。777是linux中的最高权限,表示可读,可写,可执行。
这样整个环境就搭建好了。