一 安装python-2.6.5
安装python后,最好能把以下几个目录的路径添加到windows的环境变量中.
1 python2.6.5的安装目录, 如c:\python.一些工具及教程会直接使用命令行中的python命令.不把python的安装路径添加到环境变量中可能会遇到困惑.
2 python安装目录下的scripts目录.如c:\python\scripts.可能django的django-admin.py文件及python的包安装工具easy_install.exe会放在这个目录下.
二 安装django-1.2.5
1 下载好django的压缩包后,你会看到目录下有个setup.py文件.cmd命令进入dos窗口,cd进入setup.py所在的目录.执行python setup.py install即可.其实就是复制django到你的python安装目录下的Lib\site-packages\django中.
2 接下来要创建一个django项目.apache和mysql的配置还得在这个项目的文件中进行.django提供了django-admin.py这个文件让你方便的创建一个"空白"项目.很简单,随便创建一个文件夹作为你的项目根目录.cd进入这个目录,输入django-admin.py startproject mysite即可,这将在你提供的项目根目录下创建一个mysite文件夹.mysite为你起的项目名字.
提示:以上2步如果你未把python, python\scripts添加到环境变量中,会出现"...不是内部命令..."的错误提示.
三 apache+mod_wsigi安装.
django与apache的接口使用mod_wsgi,官方目前所推荐.
也可以使用mod_python,因为该包作者已经停止更新,今后的django版本将不再支持它.
1 安装apache.我用的版本为:httpd-2.2.17-win32-x86-openssl-0.9.8o.msi.假定安装到c:\apache.
2 a) 下载mod_wsgi(官网给的是源码).这里给一个已经编译好的mod_wsgi.so文件.
http://code.google.com/p/modwsgi/downloads/detail?name=mod_wsgi-win32-ap22py26-3.3.so
b) 下载的文件为:mod_wsgi-win32-ap22py26-3.3.so.接下来就对这个文件进行一些配置.将该文件复制到apache安装目录下的modules目录.apache与各种框架,工具的接口都放在这了.
c) 配置apache\conf目录下的httpd.conf文件.添加以下内容到文件中:
LoadModule wsgi_module modules/mod_wsgi-win32-ap22py26-3.3.so
httpd.conf文件有个位置专门LoadModule.喜欢整齐的话就添加到那里吧.
3 apache目前已经知道mod_wsgi的存在了.接下来在我们刚创建的项目(mysite)中进行一些配置,让django项目知道apache的存在.
在mysite目录中建一个apache目录,在里边创建2个文件apache_django_wsgi.conf,django.wsgi.
a) apache_django_wsgi.conf文件中添加以下内容.(其实这些内容可以直接写在前面的httpd.conf文件里)
# "H:/project/django/mysite/"也就是settings.py的所在目录 # 设置static静态资源的访问路径 Alias /static/ "H:/project/django/mysite/media/" < Directory "H:/project/django/mysite/media" > Order deny,allow Allow from all </ Directory > # 设置django admin静态资源的访问路径 Alias /media/ "H:\Program\python\2.6\Lib\site-packages\django\contrib\admin\media\" < Directory "H:\Program\python\2.6\Lib\site-packages\django\contrib\admin" > Order deny,allow Allow from all </ Directory > # 设置root,不要使用"^/" WSGIScriptAlias / "H:/project/django/mysite/apache/django.wsgi" < Directory "H:/project/django/mysite/apache" > Order deny,allow Allow from all </ Directory >
注意把以上内容中的所有路径替换为你自己的.
b) django.wsgi文件中添加以下内容.
import os import sys # Calculate the path based on the location of the WSGI script. apache_configuration = os.path.dirname( __file__ ) project = os.path.dirname(apache_configuration) workspace = os.path.dirname(project) sys.path.append(workspace) os.environ[ ' DJANGO_SETTINGS_MODULE ' ] = ' mysite.settings ' import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler()
注意mysite是项目名字.如果你用了别的项目名字,记得替换掉.
c) 回到apache安装目录中的httpd.conf文件,在末尾添加:
Include "H:/project/django/mysite/apache/apache_django_wsgi.conf"
意思其实就是包含apache_django_wsgi.conf文件的内容.同样记得替换为你自己的路径.重启apache.
四 mysql+mysql_python的安装
1 a) 安装mysql.我安装的版本是msi的版本(mysql-5.5.9-win32.msi).如果你使用zip版本安装,将不会在注册表里建立与mysql相关的表项,而mysql_python的安装需要搜索注册表里的相关表项(我也很晕为什么它这么做).所以一定要使用zip解压版的同学, 记得自己建立一个reg文件,在HKEY_LOCAL_MACHINE\SOFTWARE下建立MySQL AB\MySQL Server项,然后填上对应的值(版本号,安装位置等).
Windows Registry Editor Version 5 . 00 [HKEY_LOCAL_MACHINE\SOFTWARE\MySQL AB\MySQL Server] " DataLocation " = " D:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.5\ " " Location " = " H:\Program\MySQL\MySQL Server 5.5\ " " Version " = " 5.5.9 "
双击该reg文件即可.既然使用zip安装,相信你应该知道如何替换上边的内容为你自己的值.
b) 下载mysql-connector-c-6.0.2-win32.msi.这个是mysql在c语言环境中的sdk开发包.安装.
2 安装mysql_python很痛苦,本来就不是特别为windows准备的,忍着吧.我是参考这篇文章(英文)来的:
http://www.fuyun.org/2009/12/install-mysql-for-python-on-windows/
a) 下载MySQL-python-1.2.3.tar.gz文件.解压到某个目录.假设为c:\MySQL-python-1.2.3.
b) 进入cmd窗口,cd命令进入MySQL-python-1.2.3目录,执行:
python ez_setup.py
将安装easy_install到python\scripts中.接下来可用easy_install这个工具自动安装.执行
easy_install "MySQL-python=1.2.3"
我实际安装过程中没有使用上述命令.而是执行了
setup.py biuld
接着就悲惨的跳出一堆错误.以下是相关的修改(easy_install "MySQL-python=1.2.3"应该也会遇到这些错误).主要是关于文件路径,解析错误,注册表的.
c) 修改site.cfg文件.将
registry_key = SOFTWARE\MySQL AB\MySQL Server 5.5
修改为你自己的版本号.如果registry_key前有#号注释,记得去掉.
d) 修改setup_windows.py中的内容.
library_dirs = [ os.path.join(mysql_root, r ' lib\opt ' ), " H:\\Program\\MySQL\\MySQL Connector C 6.0.2\\lib\\opt " ] libraries = [ ' kernel32 ' , ' advapi32 ' , ' wsock32 ' , client ] include_dirs = [ os.path.join(mysql_root, r ' include ' ), " H:\\Program\\MySQL\\MySQL Connector C 6.0.2\\include " ]
就是修改library_dirs及include_dirs,记得替换为你自己的路径.这里实际上是添加mysql的c语言sdk的头文件及库.根据sdk版本不同,文件目录结构可能不同,自己注意了.
e) 修改setup_common.py中的内容.
config.read([os.path.dirname(__file__) + '\\metadata.cfg' , os.path.dirname(__file__) + '\\site.cfg' ]) |
找到config.read所在一行,修改如上.
f) 去到python的安装目录,在Lib\distutils下找到msvc9compiler.py文件,搜索到
ld_args.append(‘/MANIFESTFILE:’ + temp_manifest)所在行.在该行后添加一行:
ld_args.append(‘/MANIFEST’)
自己注意python中的缩进.
g) 执行setup.py install即可安装.
3 测试,执行以下python脚本如无错误提示即可.
import MySQLdb