IIS7部署django网站指南

运行环境:

   windows Server 2008 R2 Enterprise (64位)

   IIS 7.5 

   IIS 6.0 兼容性管理

   SQL Server 2005


注: IIS 6.0兼容性管理必须安装

                                            


所需软件:

    

请到官方网站下载,所有的安装包都是32位的。

window installer是指exe的安装包, 而django,django-pyodbc,isapi_wsgi请下载python的安装包

python安装包其实就是python的源码,通常包里包含一个setup.py的安装文件,在命令行输入:python setup.py install即可。

注意,因为window server 2008对安全管理比较严格,所以,命令行安装时建议以管理员身份运行,方法如下:

在搜索框输入cmd


同时按CTRL+SHIFT+ENTER,出现提示框选择“是"



安装步骤:

1.安装python27

2.安装setup-tools, pywin32, pyodbc , django, django-pyodbc, isapi_wsgi.  (安装很简单,这都不会你就别玩什么python了)

3. 用mt.exe工具修改pyodbc.pyd文件的manifest.(请参考我的另一篇文章http://blog.csdn.net/omage/article/details/7320918)

    ( Mt.exe是用于生成符号文件和目录清单的工具,在Windows Software Development Kit (SDK)里有,如果你安装了Visual Studio,通常是在

     Program Files\Microsoft SDKs\Windows\v6.0A\bin目录。这个步骤是因为由于pyodbc的一个小bug所以不得已而为之。)

   方法如下:

              (1)以管理员身份运行命令行,进入mt.exe所在的目录  

              (2) 输入命令:   

mt.exe -inputresource:c:\windows\syswow64\python27.dll;#2 -outputresource:D:\Python27\Lib\site-packages\pyodbc.pyd;#2

  

4. 在IIS7管理器上添加网站


5. 确认启用32位应用程序为TRUE



6.使用脚本部署你的django 网站(请参考另一篇博文http://blog.csdn.net/omage/article/details/7291403)

创建一个部署脚本 wsgi_deploy.py, 内容如下

import os, sys

sys.path.append('D:\\WebDjango')

sys.path.append('D:\\WebDjango\\mysite')



os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'



import django.core.handlers.wsgi

application = django.core.handlers.wsgi.WSGIHandler()



import isapi_wsgi

# The entry points for the ISAPI extension.

def __ExtensionFactory__():

    return isapi_wsgi.ISAPISimpleHandler(application)



if __name__=='__main__':

    # If run from the command-line, install ourselves.

    from isapi.install import *

    params = ISAPIParameters()

    # Setup the virtual directories - this is a list of directories our

    # extension uses - in this case only 1.

    # Each extension has a "script map" - this is the mapping of ISAPI

    # extensions.

    sm = [

        ScriptMapParams(Extension="*", Flags=0)

    ]

    vd = VirtualDirParameters(Name="mysite",

                              Description = "ISAPI-WSGI ISAPISimpleHandler Django mysite",

                              ScriptMaps = sm,

                              ScriptMapUpdate = "replace"

                              )

    params.VirtualDirs = [vd]

    HandleCommandLine(params)


以管理员运行命令行窗口,在脚本目录下输入:  python wsgi_deploy.py install --server WebDjango

(注意WebDjango即为刚才创建的网站),脚本运行成功后,会在IIS创建mysite的app以及通配符脚本映射。




7. 打开浏览器,试试看你的网站是否可以打开了,WOW,成功了耶。







posted on 2012-03-08 14:47  omage  阅读(36)  评论(0编辑  收藏  举报