如何保护自己的 ASP
源代码不泄露? 解答:下载微软的 windows script encoder,对 ASP 的脚本和客户端 javascript、vbscript 脚 本进行加密。客户端脚本加密后,只有 ie5 以上的版本才能执行,服务器端脚本加密后,只有服务器 上安装有 script engine 5(装 ie5 即可)才能解释执行。 为什么 global.asa 文件总是不起作用? 解答:只有把 global.asa 文件放在 web 发布目录某个站点的根目录下它才有效,放在发布目录 的某个子目录下不起作用。另外,也可以使用 iis4 的 internet service manager 把某个子目录设置 为站点。 为什么 ASP 文件总不解释执行? 解答:在 iis 服务器上没有给 ASP 文件以脚本解释的权限,所以 ASP 文件没有被 web 服务器作为 脚本代码进行解释执行,而被当成一般页面文件了。建议在
web 发布目录中建立一个 ASP 目录,把所 有 ASP 文件存放在此目录下,把 ASP 目录赋予脚本解释权限。 ASP 文件中使用 response.redirect(url)时导致错误“the http headers are already written to the client browser. any http header modifications must be made before writing page content”, 请问如何解决? 解答:此错误为 http 标题在写入页内容之后,写到了客户浏览器中。任何 http 标题的修改必须 在写入页内容之前进行,解决的方法为在 ASP 文件最开头加入 response.buffer = true,在文件的结 尾加入 response.flush。 为什么 session 有时候会消失? 解答:session 很像临时的 cookie,只是其信息保存在服务器上(客户机上保存的是 sessionid)。 session 变量消失有几种可能,如:使用者的浏览器不接受 cookie,因为 session 依赖于 cookie 才 能跟踪用户; session 在一段时间后过期了, 缺省为 20 分钟, 如果希望更改, 可以通过设置 microsoft management console 的 web directory→properties→virtual directory→application settings→configuration→app options→session timeout 选项来改变 session 的超时时间,也可 以在 ASP 脚本中设定,如 session.timeout=60,可设定超时时间为 60 分钟。 怎样才能知道访问者的一些信息? 解答:通过 request.servervariables("http—user—agent")获得访问者浏览器的类型; request.servervariables("remote—addr")可获得访问者的 ip 地址;而访问者的语言环境可通过 request.servervariables("http—accept—language")来获得。 怎样才能将 query string 从一个 ASP 文件传送到另一个 ASP 文件? 解答:前一个 ASP 文件加入下列代码: response.redirect("second.ASP?"&;request.servervariables("query—string"))即可。 ASP 中如何控制 cookies? 解答: 若想写入 cookies 可用:response.cookies("待写入的 coookies 名称")=待写入数据。 读取 cookies 则使用: 读取数据=request.cookies("待读的 cookies 名称")。 注意, 写入 cookies 的 response
.cookies 程序段必须放在〈html〉标记之前,且不可以有任何的其它 html 代码。另外, cookies 中必须使用 expires 设定有效期,cookies 才能真正地写入客户端硬盘中,否则只是临时的。 怎样实现用 ASP 发送邮件? 解答:用户需装上 windows nt option pack 的 smtp service 功能。 实现代码如下: mail = server.createobject("cdonts.newmail") ="yourmail@xxx" mail.send %〉 mail.subject ="主题" mail.to ="abc@xxx" mail.body ="e-mail 内容" 〈% set mail.from
ASP 与数据库连接一定要在服务器端设置 dsn 吗? 解答: 不一定,ASP 与服务器的数据库连接有两种方法,一种为通过 dsn 建立连接,另一种不用 dsn 建立连接。 通过 dsn 连接数据库需要服务器的系统管理员在服务器的控制面板中的 odbc 中设置一 个 dsn。如果没有在服务器上设置 dsn,只要知道数据库文件名(比如 access、paradox、foxpro 的数 据库)或者数据源名(如
sqls