ubuntu 8.04安装python django apache

来源:互联网 发布:淘宝店铺搬迁 编辑:程序博客网 时间:2024/05/16 09:38
ubuntu 8.04安装python django apache
2008-11-18 19:56

绝对原创的文章,

今天一时兴趣来了,整一下ubuntu下的django环境,以前在Windows下安装过,相比php apache安装要简单,主要是django安装基本上都是集成。

django

在django网站:http://www.djangoproject.com/download/ 下载django程序在任何你可以操作的地方放着

wget -c http://www.djangoproject.com/download/0.96.3/tarball/(找个最新版的自己下吧!)

解压,安装

tar zxvf Django-0.96.tar.gz
cd Django-0.96
sudo python setup.py install

django自己安转到python的目录下

网上有人测试是否安转好,我觉得不错,借用下

在Shell命令行中输入

python (回车)

>>>import django (回车)

只要不报错就证明ok了,挺好的方法,这个证明django实际上就是python的一个包,Django实际文件存在于/usr/lib/python2.5/site-packages/django。

接着我们开始创建项目,暂时取名djangotest,缺省apache2的文档根目录是/var/www,

cd /var/www

Django安装成功后,会自动在/usr/bin中建立一个django-admin.py,这个文件很重要,用来生成工程文件

python /usr/bin/django-admin.py startproject djangotest

好了

cd djangotest

ls

应该能看到这些文件,那就成功了

__inti__.py
manage.py
settings.py
uls.py

到此处基本上一半成功了,接下来就apache的安装

有人说现在可以测试一下,

sudo python manage.py runserver

基本上没有问题的话会有下面的信息

Validating models...
0 errors found.

Django version 0.96.3, using settings 'djangotest.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

如果你有图形界面那你就试试,http://127.0.0.1:8000/ 应该会有出来一个django的页面,哈哈!如果你没有追求了,那现在就可以试着写django的代码。完全可以运行

但是我是在虚拟机上用的服务器版,那就没有办法了

apache mod_python安装

sudo apt-get install apache2

sudo apt-get install libapache2-mod-python2.5

(python的版本不同的话就修改最后边的版本号),现在基本上就支持到apache2.2 python2.5(ps 貌似mod_python已经属于apache,忘记了)

接下来就是这个配置

现在整整apache与django

sudo vi /etc/apach2/site-available/default

或者nano也行。

加入这个代码

<Directory /var/www>
SetHandler python-program
PythonPath "['/var/www'] + sys.path"
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE djangotest.settings
PythonDebug On
</Directory>

保存,重启apache,

/etc/init.d/apache2 restart

打开浏览器看看,很兴奋的页面出来了,接下来就是你的事了!

在实践操作中现在中文问题出现了

在网上找了一个解决方案貌似可以解决


一、修改/etc/mysql/my.cnf 这个配置文件
找到客户端配置[client] 在下面添加
default-character-set=utf8 默认字符集为utf8
在找到[mysqld] 添加
default-character-set=utf8 默认字符集为utf8
init_connect='SET NAMES utf8' (设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)

修改好后,重新启动mysql 即可,查询一下show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

这样实际上还是不行。

二、删除已有的数据表,然后重新创建你的数据表就可以了

drop database ×××;

create database ×××;

python manage.py syncdb

差不多就好了。