本文由wggv贡献
doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。
win7 下 iis7.5 运行 asp+access 解决方案 今天换了 win7,装了 iis7.5,内容和名称和功能都改了,摸索了很久,把网站配置好了,却 出了问题。 asp 页面访问不了,又没有具体的提示,让我苦恼了好半天,网上搜了很多方法,看的我头 大,搞了好久也不知到怎么搞的,突然一下就好。 现把网上的方法收藏到下面,但愿能为以后有帮助。 方法一: 你是否发现自己的网站刷新一遍的时候出现乱码呢 好了这里我们就来说说解决的办法 O(∩☆☆☆∩)O~首先说说第一个问题, 这个问题刚开始让自己百思不得其解啊,头疼死的 问题 不过自己发现的是个凑巧吧, 因为刚开始配置 iis7.5 的时候 直接安装了 asp 虽然 没了解过这方面的知识,不过还是发现了 asp 配置过程中会在 WEB 根目录下生成一个所 谓的 fig, 那时候觉得这个文件奇怪 于是直接删除了,然后运行自己的 ASP 文件发现 问题转化了 出现了 ODBC 连接错误,不过还是一大堆的乱码! 好了废话不说了,接着解决第 ! 二个问题第二个问题是因为是 ASP 错误 500-100 编码问题 ,解决方式具体如下: ①复制 C:\inetpub\custerr\zh-CN\500-100.asp 文件复制到你的站点文件夹下; 可能有人会想为 何不直接修改呢,因为这里有一定的权限问题 当然你也可以自己想办法得到权限直接修改 ②将这个文件修改为 utf-8 编码: a. <%@ language="VBScript">修改为<%@ language="VBScript" @codepage=65001 %> b. option explicit 后面加上一行 response.charset="utf-8" c. 修改为 d. 在 bakCodepage = Session.Codepage 后加上 Session.Codepag
e = 65001(当然可以是任何位 置,不要再第一行就好了) 3. 配置 IIS7.5 a. 打开 IIS7,选择你建立的站点,在右边窗口双击“错误页”图标,选择右边属性窗口下的“添 加……”操作 b. 添加自定义错误页窗口中,状态代码“500.100”,选择“在此网站上执行 URL”,URL 地址 “./500-100.asp” 4. 确定后,这样站点显示的出错信息有会详细的描述了,也不会再出现错误! 方法二: 64 位/32 位 Win7 下配置 IIS7.5 运行 ASP+Access 网站的方法(这个方法我成功了) 2009 年 12 月 15 日 星期二 03:56 P.M. 我们做网站的肯定要测试网站, 我喜欢用最新的系统,Vista 完全版本, windows 7 的 IIS7,许 多地方又完善了许多,但是在配置的时候遇到了问题: 800a0ea9 错误. 在微软 MSDN 论坛到的解决方法:
blogs.msdn/david.wang/archive/2005/09/23/HOWTO_Diagnose_one_cause_of_503_S ervice_Unavailable_on_IIS6.aspx Changing IIS6 to run W3WP.EXE as 32bit allows the 32bit ISAPI DLLs installed by .NET Framework 1.1 for ASP.NET to load and run inside of it. This is done
by running the following commandline: 先用管理员模式运行命令提示符,然后把以下命令粘贴,运行( 一定要安装 IIS 的全部管理工 具!) CSCRIPT %SYSTEMDRIVE%\Inetpub\AdminScripts\adsutil.vbs W3SVC/AppPools/Enable32bitAppOnWin64 1 网上到的原文:hi.baidu/wenm/blog/item/3e80db1b817d33f9af5133ba.html IIS7 的安装(iis 7.5 是一样的) Windows Vista 中 IIS7 是默认不安装的, 所以在安装完 Windows Vista 之后如果需要安装 IIS7 的话,就要自己动手了。安装的步骤为:开始》控制面板》程序》打开或关闭 Windows 功 能》Internet
信息服务。IIS7 安装时需要注意的是,如果需要 ASP、ASP.NET 等的支持,是 需要把功能模块给装上的,默认是不安装的。 控制面板中“程序”的位置 “程序”中“打开或关闭 Windows 功能”的位置 如图,安装 IIS7 时需要选择要使用的功能模块 (切记!在这里要安装 IIS 管理工具!把所有勾画上) IIS7 安装完成之后可以在开始菜单的所有程序中看到“管理工具” ,其中有一个“Internet 信息服务管理器” ,如果没有可以按以下步骤添加:开始》右击属性》 “开始”菜单选项卡》 自定义》把“系统管理工具”设置为“在所有程序菜单显示”或者“在所有程序菜单和开始 菜单上显示” 。 打开 Internet 信息服务管理器就可以看到 IIS7 的主页了 IIS7 配置 ASP+Access 使用环境 默认装完 IIS7 之后,使用 ASP 程序会发现提示数据库连接失败,在网上了,说是因为 MS Jet 引擎改变了临时目录的位置,但是又没有对临时的存取权限,导致数据库使用失败。 先要设置应用程序池(Application Pool)为 Classic .NET AppPool,而不是默认的 Default SET
AppPool,可以在网站目录里对每个站点设置,也可以在站点进行单独设置。选择好要设置 的站点之后,点右边的“基本设置”即可调出应用程序池设置对话框。 然后再给“系统盘:\Windows\ServiceProfiles\NetworkService\AppData\Local\Temp”目录添加 一个“Authenticated Users”的用户,其中 AppData 目录是隐藏的,在进入的时候可以直接 在地址栏输入路径,或者在文件夹选项里显示隐藏文件。 设置权限步骤:右击 Temp 文件夹,选择“属性” 》选择“安全”选项卡》单击“编辑” 》出 来 “Temp 的权限” 对话框, “添加”在下面的 单击 , “输入对象名称来选择” 中输入 Auth
enticated Users,确定》返回到“Temp 的权限” ,将 Authenticated Users 的权限中的完全控制给勾上, 确定》确定。 启用父路径支持 在站点主页上选择“ASP” ,然后在“行为”组中将“启用父路径”设置为 True 即可。 至此,完成了 Windows Vista 中 IIS7 的安装及使用 ASP+Access 的配置。 传统 ASP 程序开发者使用 IIS7 的小提示 至今
还有这么多传统 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 /[name='DefaultAppPool'].processModel.loadUserProfile:false -section:applicationPools
这条命令将把网络服务的临时目录权限改为可读可写。如果你是以另一个身份来运行程序, 那么你还需要将那个身份的临时目录权限给打开: icacls %windir%\serviceprofiles\networkservice\AppData\Local\Temp Users:(CI)(S,WD,AD,X) icacls %windir%\serviceprofiles\networkservice\AppData\Local\Temp OWNER":(OI)(CI)(IO)(F) 脚本错误默认为不在浏览器中显示了 作为安全策略的一部分,我们关闭了 ASP 的自动在浏览器中显示脚本错误的提示。也就是 说一般用户将不会再看到你的语句到底是哪一行出了差错。取而代之的是这个错误提示:
/grant /grant
"CREATOR
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.
asp文件管理系统
要想恢复到 IIS6 的状态也很容易,运行下面命令即可: %windir%\system32\inetsrv\appcmd set config -section:asp -enableParentPaths:true 或者你可以在窗口界面中到以下这个选项: 如果你是用 IE 测试的,去掉高级选项里的“显示友好 HTTP 错误”再看看。 IIS 管理器-ASP-Debugging Properties--Send Errors to Browser,改为 True。 最好一步给存放的网页代码的文件夹 everyone 的权限就搞定了

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。