Asp + ActivePython Python网站的架构是升级Asp系统网站的可选方式之一,本文讲述如何在Windows系统中安装ActivePython,在Asp系统中混合使用Basic和Python,使逐步升级Asp网站更加容易
Asp网站的配置
- 要启用父路径,设定将错误发送到浏览器
从ActivePython网站下载python程序
官网地址http://www.activestate.com 打开的速度比较慢,目前只支持ActivePython 2.7的32位版本,不支持64位,也不支持ActivePython 3.6。
本地下载:ActivePython-2.7.12.2712-win32-x86 32位
安装ActivePython 2.7
- 双击安装即可;
- 注册Python,运行下面命令(C:Python27为ActivePython安装目录)
C:Python27Libsite-packageswin32comextaxscriptclientpyscript.py;
如果你的系统是64位,那么还要执行以下步骤
- 安装:微软常用运行库合集
- 如果在启动Python时出现以下错误,安装:vc_redist.x64(vc运行库)
- 设置IIS中的应用程序池:启用32位应用程序
测试
测试实例文件在C:Python27Libsite-packageswin32comextaxscriptDemosclientasp,将其中csps.asp复制到IIS目录
至此,ActivePython已经可以正常运行了!
进一步配置IIS
在使用Basic的原Asp网站升级,新的Python程序,最好改为.py后缀。这样便于区分,也方便编辑。
- IIS6.0(winodws2003)的配置,在Web服务扩展中,允许Active Server Pages
- IIS7及以后版本,需要配置web.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<httpErrors>
<remove statusCode="500" subStatusCode="-1" />
<error statusCode="500" prefixLanguageFilePath="\inetpub\custerr" path="500-100.asp" responseMode="File" />
</httpErrors>
<directoryBrowse enabled="true" />
<handlers>
<add name="ASP" path="*.asp" verb="GET,HEAD,POST" modules="IsapiModule" scriptProcessor="%windir%\system32\inetsrv\asp.dll" resourceType="File" requireAccess="Script" />
<add name="ASP-py" path="*.py" verb="GET,HEAD,POST" modules="IsapiModule" scriptProcessor="%windir%\system32\inetsrv\asp.dll" resourceType="File" requireAccess="Script" />
</handlers>
<defaultDocument>
<files>
<clear />
<add value="index.asp" />
<add value="index.html" />
<add value="Default.asp" />
<add value="Default.htm" />
</files>
</defaultDocument>
</system.webServer>
</configuration>
配置web.config后,可能会显示“不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定...”,解除的方法是使用管理员身份运行C:windowssystem32inetsrvappcmd unlock config -section:system.webServer/handlers
经过解锁后,xxx.py后缀的文件可以被直接调用运行了: