Asp + ActivePython Python网站的架构是升级Asp系统网站的可选方式之一,本文讲述如何在Windows系统中安装ActivePython,在Asp系统中混合使用Basic和Python,使逐步升级Asp网站更加容易
Asp网站的配置
从ActivePython网站下载python程序
官网地址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:\Python27\Lib\site-packages\win32comext\axscript\client\pyscript.py;
如果你的系统是64位,那么还要执行以下步骤
- 安装:微软常用运行库合集
-
如果在启动Python时出现以下错误,安装:vc_redist.x64(vc运行库)
测试
测试实例文件在C:\Python27\Lib\site-packages\win32comext\axscript\Demos\client\asp,将其中csps.asp复制到IIS目录
至此,ActivePython已经可以正常运行了!
进一步配置IIS
在使用Basic的原Asp网站升级,新的Python程序,最好改为.py后缀。这样便于区分,也方便编辑。
1. IIS6.0(winodws2003)的配置,在Web服务扩展中,允许Active Server Pages
2. 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:\windows\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers
经过解锁后,xxx.py后缀的文件可以被直接调用运行了: