##language:zh ''' 在Debian/Testing上安装运行Django ''' ::-- ZoomQuiet [<>] <> = Django在Debian中 = ''简述'' [[PyCNmail:2005-July/013258.html|2005-July/013258.html]] {{{发件人: Wang Kebo 回复: python-chinese@lists.python.cn 收件人: python-chinese@lists.python.cn 日期: 2005-7-20 上午9:42 }}} 这个安装过程基于Django内置的Web服务器,不涉及Apache和mod_python。 在最新的Debian/Testing上,基于python2.4,需要的软件包括: {{{ Postgresql 8.0 Django egenix-mx-base(mxDateTime) psycopg }}} 在我的安装经验中,只有Postgresql8.0可以使用Debian的包管理器apt-get安装,其他 软件包都必须使用源代码编译安装(包括mod-python,因为Debian还没有发布这些软件 包 基于python2.4的版本)。 1.安装Postgresql8.0 首先su -成为超级用户,然后{{{ apt-get update atp-get install postgresql-8.0 }}} 如果安装过程成功,Postgresql的客户端也会被安装。 1. 配置Postgresql Postgresql的配置必须有postgres用户来进行,安装网络上找到的在Debian上安装 Postgres的文档,步骤如下: {{{ su su postgres }}} 但我在我的Debian/Testing上发现执行后系统没有报错,但我用命令whoami,发现身份 仍然是root。 在这里耽误了几个小时后,我猜想是postgres用户缺省shell的问题(参考 `/etc/passwd`,postgres的缺省shell被设置成/bin/false) 将命令su postgres换成 `su postgres -s /bin/bash` 后,成功成为postgres用户。 接下来,创建用户,创建数据库: `createuser mep -W` 配置/etc/postgres/8.0/main/pg_hba.conf为刚才创建的用户授权,编辑添加如下的 行: {{{ localhost all mep ident sameuser }}} 重新启动Postgres,/etc/init.d/postgresql-8.0 restart,使用psql登录template1 数据库验证是否成功。 创建数据库: `createdb -U mep -W mydb` 然后使用psql登录验证是否成功: `psql -U mep mydb` 如果这一步成功了,Postgres就OK了。 1. 编译安装mxDateTime(版本2.0.6) 我原本是使用Debian的包管理器安装mxDateTime,安装后发现编译安装psycopg需要的 一个头文件没有。于是从源代码开始。 安装mxDateTime,使用经典的./configure、make在sudo make install即能成功。 1. 安装psycopg(版本1.1.19) 没什么特别,在运行configure的时候,需要指明--with-mxdatetime-includes=DIR, 即mxDateTime头文件的目录。 接下来就是make && sudo make install。 1. 安装Django 跟随官方网站上的指令,建立一个符号链接即可。 以上步骤运行官方网站上的Tutorial1和2成功,3还没有时间做。