首页 | 新闻资讯 | 软件应用 | 图形图像 | 网络应用 | 硬件学堂 | 程序开发 | 安全中心 | 素材下载 | 作者专区 | 学院论坛
精选专题 | 精美壁纸 | 专家答疑 | Flash剧场 | Photoshop | 名词解释 | 梦幻桌面 | PS高手进阶 | QQ区 | 图书 | 黑客教材
Flash教程| 卡通制作 | AutoCAD | 3DMax实例 | PS视频教程| 网页制作 | CorelDRAW| Firework | 滤镜与实例 | 全部视频教程
当前位置:eNet硅谷动力 > 学院频道 > 经验技巧

传统ASP程序开发者使用IIS7小提示
2007-05-23 08:07 来源:CnBeta
【简 介】
  至今还有这么多传统ASP (Classic ASP) 应用程序和开发者,真让我感到惊讶。我还记得96、97年的时候IIS3问世,我体验了最原始的ASP程序,并为它与ColdFusion相比表现出的惊 人的可编程性赞叹不已。使用传统ASP我建立了许多应用, 它将成为我记忆中永不褪色的闪光点:)
    
加入收藏  设为首页

  至今还有这么多传统ASP (Classic ASP) 应用程序和开发者,真让我感到惊讶。我还记得96、97年的时候IIS3问世,我体验了最原始的ASP程序,并为它与ColdFusion相比表现出的惊 人的可编程性赞叹不已。使用传统ASP我建立了许多应用, 它将成为我记忆中永不褪色的闪光点:)

  使用传统ASP编程的开发人员应该对IIS7的几个小变化引起注意。  

  ASP缺省不安装  

  重要的事先来! 如果从XP迁移到Vista / Longhorn Server, 您也许会得到这个错误:

  -------------------------------------------------------------------------------------------------------------------- 

  HTTP Error 404.3 - Not Found  

  Description: The page you are requesting cannot be served because of the Multipurpose Internet Mail Extensions (MIME) map policy that is configured on the Web server. The page you requested has a file name extension that is not recognized, and is not allowed. 

  --------------------------------------------------------------------------------------------------------------------

  这是您没有安装ASP组件时的情形,所以去您安装IIS的地方找到IIS/WWW Services(WWW服务)/Application Development(应用程序开发)/ASP 来安装它。:) 

  Access 与传统ASP  

  很多人使用Access作为数据库-因为它小巧,可复制, 容易处理。我们在Vista IIS7的一个变动就是缺省不使用ASP和Access。本篇我将详细描述这一变化, 但根本上这是因为应用程序池(Application Pool)缺省不再使用\windows\temp, 而改为应用程序池身份档案(identity's profile)和临时目录。并且因为只有"网络服务"才能向网络服务的临时目录执行写入操作, ASP使用虚拟身份(impersonated identity)访问数据库, 所以匿名或已认证的ASP应用程序就会中止。如果您在IIS7使用ASP+Access、你大概会看到与以下提示类似的错误信息:

  -------------------------------------------------------------------------------------------------------------------- 

  Microsoft JET Database Engine error '80004005'

  Unspecified error 

  --------------------------------------------------------------------------------------------------------------------

  回答很简单: 关闭loadUserProfile, 或者设置temp directory的访问权限以允许写操作. 这一问题和其它兼容性问题导致, 我们考虑在Longhorn Server / Vista SP1中取消这一变化.   

  不过现在, 您可以在下列措施中任选一项:   

  这个 appcmd 指令将为缺省应用程序池关闭 loadUserProfile. 假如您的程序运行于不同的应用程序池(AppPool), 就相应改动一下:  

  %windir%\system32\inetsrv\appcmd set config -section:applicationPools /[name='DefaultAppPool'].processModel.loadUserProfile:false  

  这条命令将把网络服务的临时目录权限改为可读可写。如果你是以另一个身份来运行程序,那么你还需要将那个身份的临时目录权限给打开:

  icacls %windir%\serviceprofiles\networkservice\AppData\Local\Temp /grant Users:(CI)(S,WD,AD,X)  

  icacls %windir%\serviceprofiles\networkservice\AppData\Local\Temp /grant "CREATOR OWNER":(OI)(CI)(IO)(F)  

  脚本错误默认为不在浏览器中显示了  

  作为安全策略的一部分,我们关闭了ASP的自动在浏览器中显示脚本错误的提示。也就是说一般用户将不会再看到你的语句到底是哪一行出了差错。取而代之的是这个错误提示:

  --------------------------------------------------------------------------------------------------------------------  

  An error occurred on the server when processing the URL. Please contact the system administrator  

  -------------------------------------------------------------------------------------------------------------------  

  要想恢复到IIS6的状态也很容易,运行下面命令即可:  

  %windir%\system32\inetsrv\appcmd set config -section:asp -scriptErrorSentToBrowser:true  

  或者你可以在窗口界面中找到以下这个选项:

  


  之后你就能看到这样的错误提示信息了:

  --------------------------------------------------------------------------------------------------------------------  

  Microsoft VBScript compilation error '800a03ea'  

  Syntax error  

  /test.asp, line 4  

  Response.Write("I love classic ASP" && foo)

  -------------------------------------^ 

  --------------------------------------------------------------------------------------------------------------------  

  父目录默认是不能访问的  

  在IIS6中我们默认屏蔽了父目录的访问,但是一些从XP升级到Vista的用户显然遇到了麻烦。因为在IIS5.1中,父目录默认是可以访问的。所以如果你使用了../../../includeFile.inc这样的路径,你就会得到这样的错误提示:

  -------------------------------------------------------------------------------------------------------------------- 

  Active Server Pages error 'ASP 0131'  

  Disallowed Parent Path  

  /test.asp, line 1  

  The Include file '../bad.inc' cannot contain '..' to indicate the parent directory.

  ------------------------------------------------------------------------------------------------------------------  

  要想恢复到IIS6的状态也很容易,运行下面命令即可:  

  %windir%\system32\inetsrv\appcmd set config -section:asp -enableParentPaths:true

  或者你可以在窗口界面中找到以下这个选项:
  

热门推荐 浏览器看点 重温IE 1.0到 IE 7.0 管好网络:熟悉vista自带防火墙


【责任编辑 王蕊】

关键字: ASP  IIS  IIS7  技巧 
您对这篇文章的看法是:    喜欢 反感 支持 反对 加油 鄙视 学习 打击 佩服 漂亮 路过 发表评论
1.您是否愿意通过eNet在线报名的方式,参加培训机构的培训?
是 
2.通过硅谷动力报名,您希望得到哪些优惠?
学费打折 赠送课时
3.报名后,您更愿意将培训费用:
通过eNet转交培训机构
直接交给培训机构
4.您在选择培训机构时,更注重:
培训机构名气  培训费用
5.您的年龄范围:
15~18岁  19~22岁
23岁以上
视频教程】 【专题汇总】 【不懂就问我关闭窗口

用Photoshop快速制作暗光精灵效果
用3ds max模拟香烟烟丝飘动的效果
与众不同 Win XP开始菜单也要VIP
设计无处不在 经典的指印创意欣赏
搜狗五笔输入法1.2版正式发布
焦点文章
 本栏目最新文章
·教你本地安装、运行、调试PHP程序
·浅谈C#中所谓的 “值类型”
·ASP.NET 全局异常处理的方法
·编程实例 Ajax的基本实现方法
·ASP.NET技术的学习顺序问题
 精彩回放
·3DSMAX打造书本翻开效果
·共享上网技巧应用四则
·陪酒女浸泡在酒里的青春
·美女的性感靓丽婚纱设计
·妖冶身姿 死或生3壁纸
·剿灭Win XP下的29个烦恼
·黑客必备 NET命令大全
·用PS制作精致绝伦的红酒
 精彩推荐
 今日软件下载
·企业级即时通信平台 腾讯通RTX
·极品时刻表含春运临时列车数据
·下载管理器 BitComet 比特彗星
·边下边看想看就看风行网络电影
·超级图文影音转换器 Konvertor
 往日推荐
·手工破解网吧多种限制
·Windows 网络管理技巧
·WMP 10使用技巧三则
·女孩问你帅不帅 要小心
·注册表优化XP 20招
·制作XP万能ghost光盘
·WMP10火拼DVD播放器
·街头霸王图片集中营
·五大搜索引擎横向评测
·防御计算机病毒十大步骤

论坛精华
·photoshop完美扣图教 
·国外高手的调色合成 
·史上最强最多 photo 
·Photoshop抠图完全大 
·PS初学者十三课,献给 
·原创:本人默哀作品 
热点推荐
修复灰暗照片
浪漫婚纱照片
Flash视频编程
章子怡月历桌面
热点关注
·SEO从入门到精通视频教程
·Photoshop数码照片处理案例
·3DSMAX室内渲染实例视频教程
·ASP.NET经典实例视频教程
·Dreamwaver CS3 视频教程
·JAVA-J2ME移动开发实战教学
·网站重构&web标准设计教程
·瑞星杀毒08套装免费用一年
·瑞星卡卡上网助手 正版免费
Photoshop打造清纯漂亮的美女插画
往日推荐
打造火焰文字
鹏哥C#教程
美女怀旧照片
3D室内渲染
焦点关注