利用asp获取客户端真实ip地址.pdfVIP

  • 6
  • 0
  • 约3.04千字
  • 约 4页
  • 2020-09-13 发布于江苏
  • 举报
利用 ASP 获取客户端真实 IP地址 一、前言 随着 Internet 的普及以及网络用户的增多,摆在各个网站面前 的是网络安全问题以及对客户的管理问题,比如说,有个用户不停的 攻击你的网站,那么你可以查出他的 IP 地址,然后封杀他的 IP 地址; 有个用户启动几十个线程到你网站下载文件,导致别人不好下载,那 么你可以允许他的 IP 地址最多只能启动两个线程;有个用户试图以 多个身份登陆到你的游戏室下棋,那你可以设置一个 IP 只能以一个 身份登陆一个游戏室,所有的这些问题都是建立在你要先获取他的 IP 地址为前提,本文讲的就是如何通过服务器获取客户端的 IP 地址。 二、ASP 简介 ASP 全称 Active Server Pages 它是在服务器端运行的脚本语言, 使用它可以创建和运行动态、交互的 Web 服务器应用程序。使用 ASP 可以组合 HTML 页 、脚本命令和 ActiveX 组件以创建交互的 Web 页和基于 Web 的功能强大的应用程序,它是在标准的HTML 流中用 % %加入 ASP 语句,然后以.asp 作为扩展名的网页。由于脚本 在服务器上而不是在客户端运行,传送到浏览器上的 Web 页是在 Web 服务器上生成的,所以不必担心浏览器能否处理脚本:Web 服务 器已经完成了所有脚本的处理,并将标准的 HTML 传输到浏览器,由 于只有脚本的结果返回到浏览器,所以服务器端脚本不易复制,用户 看不到创建他们正在浏览的页的脚本命令。 ASP3.0 有 7 个内建对象,其中有两个对象一直与客户端联系, 一个是 Request,另一个是Response, Request 对象是获取客户端 HTTP 信息 ,而 Response 对象正好相反,是用来控制发送给用户的信 息,包括直接发送信息给浏览器、重定向浏览器到另一个 URL 或设 置 cookie 的值。这两个对象都包含了一些属性、方法、变量以及数 据集合,两者的语法为: Request 或 Response[. 集合 | 属性 | 方法 ]( 变量 ) Request 对象里有个 ServerVariables 的数据集合,也是本文要 用到的,叫服务器环境变量,它能够自动获得客户端的很多信息,由 于这个集合的变量比较多,本文只列少许常用的: ALL_HTTP 客户端发送的所有 HTTP 标题文件。 CONTENT_LENGTH 客户端发出内容的长度。 CONTENT_TYPE 内容的数据类型。如: “text/html”。同附加 信息的查询一起使用,如 HTTP 查询 GET、POST 和 PUT。 LOCAL_ADDR 返回接受请求的服务器地址。如果在绑定多个 IP 地址的多宿主机器上查找请求所使用的地址 时,这条变量非常重要。 LOGON_USER 用户登录 Windows NT 的账号。 QUERY_STRING 查询 HTTP 请求中问号(?)后的信息。 REMOTE_ADDR 发出请求的远程主机 (client) 的 IP 地址。 REMOTE_HOST 发出请求的主机 (client) 名称。如果服务器无此 信息,它将设置为空的 MOTE_ADDR 变量。 REQUEST_METHOD 该方法用于提出请求。相当于用于 HTTP 的 GET、HEAD、POST 等等。 SERVER_NAME 出现在自引用 URL 中的服务器主机名、DNS 化名 或 IP 地址。 SERVER_PORT 发送请求的端口号。 三、实现 正如前文介绍 ASP 那样,我们可以利用 Request.ServerVariables(REMOTE_ADDR) 来取得客户端的 IP 地 址,假如网站的主页是 index.asp,我们可以在它的HTML 里加上这 样一段代码: html head title欢迎访问本网站/title /head body …………………… 2 …………………… …………………… % Ip_address=Request.ServerVariables (REMOTE_ADDR)

文档评论(0)

1亿VIP精品文档

相关文档