8

django1.7+IIS+部署

插曲

在维护醉晚的过程中,是实在没有考虑到88服务器居然会被学校封锁,所以只能将所在的服务器转移。因为历史原因,只能将django配置  在win7上配置,所用的服务是IIS,django1.7,wfastcgi。

配置前的一些准备

  • 下载python 2.7
  • 用pip现在django1.7,pip install django=='1.7'
  • 先在win7的程序和功能->打开或关闭系统功能,将internet information servers勾选,然后将里面的相关配置点亮。:P
  • 用pip下载wfastcgi

配置IIS

  • 首先得确认,IIS服务已经开启,并且也已经将CGI服务开启。
  • 这里 网站上下载web platform installer
  • 在IIS里面讲WPI打开,搜索fastcgi,找到wfastcgi并且安装它。

    note

    如果安装失败,请添加一个键值在HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node下面 这个键的路径是Python\PythonCore\2.7\InstallPath,值是C:\Python27\

  • 确认这个wfastcgi.py 在 C:\Python27\Scripts\ 路径下

    note

    将这个wfastcgi文件复制到django项目文件的根目录中

  • 返回到web服务器IIS处,并在根目录下保证CGI和FastCGI都已经存在

  • 在IIS中创建一个网站,并将它的路径定位到django项目所在的根目录处,并且给它配置一个不会与其它程序起冲突的端口号。

  • 在处理映射中,右键,添加一个模块映射

  • 在模块映射中添加:
    + 请求路径:*
    + 模块:FastModule
    + 可执行程序 “C:\Python27\python.exe|C:\inetpub\wwwroot[project site]\wfastcgi.py”
    + 名称:自定义

  • 点击请求限制

  • 确认映射的选框为非勾选状态

  • 点击确认,两次后进行下一步

  • 当问到是否给FastCGI设置集合提供一个入口时,点击确认

  • 点击IIS根目录,选择FastCGI设置

  • 目前应该有的东西是一个python.exe和wfastcgi参数

  • 双击,在环境变量中点击collection

  • 添加三个环境变量:
    + DJANGO_SETTINGS_MODULE:项目的settings文件所在的位置,包括settings本身
    + PYTHONPATH: 项目的根目录所在的位置
    + WSGI_HANDLER: django.core.handlers.WSGIHandler(当然,如果以后更新到高级版本的话,如果CGI变化了的话,那么将这个地方改成新的handler即可)

  • 点击OK,然后再在将wfastcgi.py 中文件中添加
    import django

    django.setup()
    至于为什么要这么设置,官方文档里面有提到过 https://docs.djangoproject.com/en/1.8/ref/applications/

django的加载