civilvar 发表于 2015-8-17 12:59:50

在server2008R2的IIS7中调试asp程序遇到的错误

  最近因为需要,把很久之前的一个asp程序拿回来调试,本以为IIS7这么高级的玩意肯定支持asp,没想到出现了以下问题:
  
  按照以前的步骤设置新网站,设置端口,设置程序池,结果,打不开!
  
  按照提示发现了这个页面:
  
  http://learn.iis.net/page.aspx/559/running-classic-asp-applications-on-iis-70-and-iis-75/
  
Running Classic ASP Applications on IIS 7.0 and IIS 7.5


[*]Classic ASP Applications on IIS 7.0 and IIS 7.5 Overview
[*]Classic ASP Not Installed by Default on IIS 7.0 and IIS 7.5
[*]Classic ASP Script Error Messages No Longer Shown in Web Browser by Default
[*]Using Failed Request Tracing to troubleshoot Classic ASP errors
[*]Classic ASP parent paths are disabled by default
[*]Using Classic ASP with Microsoft Access Databases on IIS 7.0 and IIS 7.5
[*]APPL_PHYSICAL_PATH Server Variable on Windows Vista RTM
看来直接在2008R2的IIS7里调试asp还需要一番设置。2008R2已经是纯64位了,因为要用到access数据库,首先要改程序池的这个地方:
刚才又查了一下,原来是微软没有出支持64位的oledb,IIS默认运行在64位下,因此不能连接到oledb数据库了。
Working with 64-bit Systems
  Unfortunately there are no 64-bit ODBC drivers, so on 64-bit systems you will have to run your applications in 32-bit mode. To do so, use the following steps:

[*]On the taskbar, click Start, point to Administrative Tools, and then click Internet Information Services (IIS) Manager.
[*]In the Connections pane, click Application Pools.
[*]Highlight the application pool for your application, then click Advanced Settings... in the Actions pane.
[*]In the Advanced Settings dialog, specify True for Enable 32-Bit Applications.
[*]Click OK to close the Advanced Settings dialog.
让他支持32位
  
  然后打开程序,还是不行,IIS7里默认父路径也是关闭的,也需要打开,启用客户端调试

  
  然后还是遇到那个经典的“操作必须使用一个可更新的查询”错误,这个应该就是数据库目录权限不够,但是已经添加了 IIS_IURS的权限啊。因为时间紧,只能给everyone添加写入权限了,这样应该不安全,但总算可以运行了。
页: [1]
查看完整版本: 在server2008R2的IIS7中调试asp程序遇到的错误