繁体   English   中英

IIS没有使用PyISAPIe链接到Django

[英]IIS Not Linking to Django with PyISAPIe

我正在尝试在基于IIS的服务器上运行Django站点。 我按照主站点上的所有说明( http://code.djangoproject.com/wiki/DjangoOnWindowsWithIISAndSQLServer ),并用一篇非常好的文章仔细检查了它( http://www.messwithsilverlight.com/2009/11/django -on-windows-server-2003-and-iis6 / )。

我成功地设置了IIS来读取.py文件。 按照主要说明,我可以让服务器呈现Info.py. 但是,我似乎无法让IIS和Django玩得很好。 例如,如果我的虚拟目录是“abc”,那么如果我转到“localhost / abc /”,浏览器只会显示该文件夹的内容目录。 此外,如果我设置了我的网址以便“/ dashboard / 1”将我带到某个页面,输入“localhost / abc / dashboard / 1”会给我一个“无法显示页面”的错误。

我相当确定IIS根本就没有引用Django或与Django进行交互。 有没有人有任何想法如何解决这个问题?

谢谢

以下是我遵循的原始说明,

基础知识说明: https//code.djangoproject.com/wiki/DjangoOnWindowsWithIISAndSQLServer其他提示: http//whelkaholism.blogspot.ca/

  1. 你应该做的第一件事是安装Python 2.5或2.6,对于2.7你需要重新编译PyISAPIe,我还没有。 http://www.python.org/ftp/python/2.6/python-2.6.msi
  2. 您需要安装与您的Python解释器版本匹配的PyISAPIe版本,如果它们不匹配,它将失败。 到那里: http//sourceforge.net/projects/pyisapie/files/pyisapie/
  3. 将提取的文件夹从最后一步移动到一个不错的位置(即C :)
  4. 你需要更改PyISAPIe.dll的安全设置,他们建议网络服务读取,但我设置了所有人,以确保没有这个问题
  5. 然后你必须将PyISAPIe的Http文件夹切割并粘贴 (重要)到Python安装目录的Lib \\ Site-Packages
  6. 接下来,您设置IIS(在运行中使用inetmgr打开管理器(winkey + r):
    • 添加新的虚拟目录,并在向导提示时允许执行ISAPI扩展
    • 在虚拟目录的属性中添加新的通配符扩展,untick文件存在设置
    • 将Web服务扩展添加到指向dll的IIS管理器,确保允许它
  7. 从PyISAPIe文件夹中,复制examples \\ django \\ Isapi.py并将其粘贴到Lib \\ Site-Packages \\ Http中
  8. 在Isapi.py中,设置路径(即c:\\ inetpub \\ wwwroot \\ web_site \\ django_project )和DJANGO_SETTINGS_MODULE(即django_app .settings)
  9. 对文件进行任何更改后, 在命令提示符中使用iisreset应用更改

以下是您可能会做的其他一些事情

  • 确保db文件的路径(如果使用sqlite)没问题
  • 对模板位置设置执行相同操作
  • 在您的url和html文件中,确保路径以您为虚拟目录别名命名的名称(即我们示例中的web_site

最后,您可能会遇到服务CSS的困难。 如果您有任何问题,请告诉我,我会更新我的帖子。

使用任何网络服务器提供Django基本上涉及三个关键细节:

  1. 告诉网络服务器,“我希望你提供这个模块提供的调用python的内容”
  2. 告诉python模块,“我想让你使用这个文件中的细节执行python代码”
  3. 告诉文件,“我希望你使用Django”

如果您正在为虚拟目录获取目录列表,那么您似乎应该调查VD设置以确保为该目录配置PyISAPIe(关键详细信息#1)。

从你提到的文章:

  • 打开IIS管理控制台,并创建一个新的虚拟目录,并在向导提示时允许执行ISAPI扩展。

    • 查看新文件夹的属性,然后单击“配置”按钮(如果它显示为灰色,先单击“创建”),然后添加新的通配符扩展名(下方框),找到pyisapie.dll文件并取消勾选“检查该文件是否存在“框。

    • 在IIS管理器中,转到“Web服务扩展”部分,然后右键单击 - >添加新的Web服务扩展。

  • 给它命名(无关紧要),将pyisapie.dll填充添加为必需文件,并选中复选框以将扩展状态设置为允许。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM